MCPcopy Index your code
hub / github.com/coder/coder / TestSubscribeAfterMessageID

Function TestSubscribeAfterMessageID

coderd/x/chatd/chatd_test.go:4940–5017  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

4938}
4939
4940func TestSubscribeAfterMessageID(t *testing.T) {
4941 t.Parallel()
4942
4943 db, ps := dbtestutil.NewDB(t)
4944 replica := newTestServer(t, db, ps, uuid.New())
4945
4946 ctx := testutil.Context(t, testutil.WaitLong)
4947 user, org, model := seedChatDependencies(t, db)
4948
4949 chat := dbgen.Chat(t, db, database.Chat{
4950 OrganizationID: org.ID,
4951 OwnerID: user.ID,
4952 LastModelConfigID: model.ID,
4953 Title: "after-id-test",
4954 Status: database.ChatStatusWaiting,
4955 })
4956
4957 // Seed all messages directly so this subscription test is independent
4958 // of chat processing lifecycle behavior.
4959 firstContent, err := chatprompt.MarshalParts([]codersdk.ChatMessagePart{
4960 codersdk.ChatMessageText("first"),
4961 })
4962 require.NoError(t, err)
4963
4964 _ = dbgen.ChatMessage(t, db, database.ChatMessage{
4965 ChatID: chat.ID,
4966 CreatedBy: uuid.NullUUID{UUID: user.ID, Valid: true},
4967 ModelConfigID: uuid.NullUUID{UUID: model.ID, Valid: true},
4968 Role: database.ChatMessageRoleUser,
4969 ContentVersion: chatprompt.CurrentContentVersion,
4970 Content: firstContent,
4971 })
4972
4973 secondContent, err := chatprompt.MarshalParts([]codersdk.ChatMessagePart{
4974 codersdk.ChatMessageText("second"),
4975 })
4976 require.NoError(t, err)
4977
4978 msg2 := dbgen.ChatMessage(t, db, database.ChatMessage{
4979 ChatID: chat.ID,
4980 ModelConfigID: uuid.NullUUID{UUID: model.ID, Valid: true},
4981 Role: database.ChatMessageRoleAssistant,
4982 ContentVersion: chatprompt.CurrentContentVersion,
4983 Content: secondContent,
4984 })
4985
4986 thirdContent, err := chatprompt.MarshalParts([]codersdk.ChatMessagePart{
4987 codersdk.ChatMessageText("third"),
4988 })
4989 require.NoError(t, err)
4990
4991 _ = dbgen.ChatMessage(t, db, database.ChatMessage{
4992 ChatID: chat.ID,
4993 CreatedBy: uuid.NullUUID{UUID: user.ID, Valid: true},
4994 ModelConfigID: uuid.NullUUID{UUID: model.ID, Valid: true},
4995 Role: database.ChatMessageRoleUser,
4996 ContentVersion: chatprompt.CurrentContentVersion,
4997 Content: thirdContent,

Callers

nothing calls this directly

Calls 13

NewDBFunction · 0.92
ContextFunction · 0.92
ChatFunction · 0.92
MarshalPartsFunction · 0.92
ChatMessageTextFunction · 0.92
ChatMessageFunction · 0.92
filterMessageEventsFunction · 0.85
newTestServerFunction · 0.70
seedChatDependenciesFunction · 0.70
NewMethod · 0.65
SubscribeMethod · 0.65
LenMethod · 0.45

Tested by

no test coverage detected