( t *testing.T, db database.Store, ps dbpubsub.Pubsub, replicaID uuid.UUID, dialer func( ctx context.Context, chatID uuid.UUID, workerID uuid.UUID, requestHeader http.Header, ) ( []codersdk.ChatStreamEvent, <-chan codersdk.ChatStreamEvent, func(), error, ), clock quartz.Clock, )
| 44 | } |
| 45 | |
| 46 | func newTestServer( |
| 47 | t *testing.T, |
| 48 | db database.Store, |
| 49 | ps dbpubsub.Pubsub, |
| 50 | replicaID uuid.UUID, |
| 51 | dialer func( |
| 52 | ctx context.Context, |
| 53 | chatID uuid.UUID, |
| 54 | workerID uuid.UUID, |
| 55 | requestHeader http.Header, |
| 56 | ) ( |
| 57 | []codersdk.ChatStreamEvent, |
| 58 | <-chan codersdk.ChatStreamEvent, |
| 59 | func(), |
| 60 | error, |
| 61 | ), |
| 62 | clock quartz.Clock, |
| 63 | ) *osschatd.Server { |
| 64 | t.Helper() |
| 65 | logger := slogtest.Make(t, &slogtest.Options{IgnoreErrors: true}) |
| 66 | server := osschatd.New(osschatd.Config{ |
| 67 | Logger: logger, |
| 68 | Database: db, |
| 69 | ReplicaID: replicaID, |
| 70 | Pubsub: ps, |
| 71 | SubscribeFn: entchatd.NewMultiReplicaSubscribeFn(entchatd.MultiReplicaSubscribeConfig{DialerFn: dialer, Clock: clock}), |
| 72 | PendingChatAcquireInterval: testutil.WaitSuperLong, |
| 73 | }) |
| 74 | server.Start() |
| 75 | t.Cleanup(func() { |
| 76 | require.NoError(t, server.Close()) |
| 77 | }) |
| 78 | return server |
| 79 | } |
| 80 | |
| 81 | func newActiveWorkerServer( |
| 82 | t *testing.T, |
no test coverage detected