(t *testing.T)
| 8902 | } |
| 8903 | |
| 8904 | func TestEditMessageRejectsArchivedChat(t *testing.T) { |
| 8905 | t.Parallel() |
| 8906 | |
| 8907 | db, ps := dbtestutil.NewDB(t) |
| 8908 | replica := newTestServer(t, db, ps, uuid.New()) |
| 8909 | |
| 8910 | ctx := testutil.Context(t, testutil.WaitLong) |
| 8911 | user, org, model := seedChatDependencies(t, db) |
| 8912 | |
| 8913 | chat, err := replica.CreateChat(ctx, chatd.CreateOptions{ |
| 8914 | OwnerID: user.ID, |
| 8915 | OrganizationID: org.ID, |
| 8916 | Title: "edit-archived", |
| 8917 | ModelConfigID: model.ID, |
| 8918 | InitialUserContent: []codersdk.ChatMessagePart{codersdk.ChatMessageText("original")}, |
| 8919 | }) |
| 8920 | require.NoError(t, err) |
| 8921 | |
| 8922 | messages, err := db.GetChatMessagesByChatID(ctx, database.GetChatMessagesByChatIDParams{ |
| 8923 | ChatID: chat.ID, |
| 8924 | AfterID: 0, |
| 8925 | }) |
| 8926 | require.NoError(t, err) |
| 8927 | require.Len(t, messages, 1) |
| 8928 | |
| 8929 | err = replica.ArchiveChat(ctx, chat) |
| 8930 | require.NoError(t, err) |
| 8931 | |
| 8932 | _, err = replica.EditMessage(ctx, chatd.EditMessageOptions{ |
| 8933 | ChatID: chat.ID, |
| 8934 | EditedMessageID: messages[0].ID, |
| 8935 | Content: []codersdk.ChatMessagePart{codersdk.ChatMessageText("edited")}, |
| 8936 | }) |
| 8937 | require.ErrorIs(t, err, chatd.ErrChatArchived) |
| 8938 | } |
| 8939 | |
| 8940 | // TestEditMessageWithModelConfigOverride verifies that callers can |
| 8941 | // change the model when editing a previous user message. The |
nothing calls this directly
no test coverage detected