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

Function TestChatModelOverrides

coderd/exp_chats_test.go:11255–11509  ·  view source on GitHub ↗

nolint:tparallel,paralleltest // Setting subtests share per-setting coderdtest instances.

(t *testing.T)

Source from the content-addressed store, hash-verified

11253
11254//nolint:tparallel,paralleltest // Setting subtests share per-setting coderdtest instances.
11255func TestChatModelOverrides(t *testing.T) {
11256 t.Parallel()
11257
11258 type overrideResponse struct {
11259 context codersdk.ChatModelOverrideContext
11260 modelConfigID string
11261 isMalformed bool
11262 }
11263
11264 type settingTest struct {
11265 name string
11266 context codersdk.ChatModelOverrideContext
11267 dbGet func(context.Context, database.Store) (string, error)
11268 dbUpsert func(context.Context, database.Store, string) error
11269 }
11270
11271 settingPath := func(overrideContext codersdk.ChatModelOverrideContext) string {
11272 return "/api/experimental/chats/config/model-override/" + string(overrideContext)
11273 }
11274
11275 getOverride := func(
11276 ctx context.Context,
11277 client *codersdk.ExperimentalClient,
11278 overrideContext codersdk.ChatModelOverrideContext,
11279 ) (overrideResponse, error) {
11280 resp, err := client.GetChatModelOverride(ctx, overrideContext)
11281 if err != nil {
11282 return overrideResponse{}, err
11283 }
11284 return overrideResponse{
11285 context: resp.Context,
11286 modelConfigID: resp.ModelConfigID,
11287 isMalformed: resp.IsMalformed,
11288 }, nil
11289 }
11290
11291 putOverride := func(
11292 ctx context.Context,
11293 client *codersdk.ExperimentalClient,
11294 overrideContext codersdk.ChatModelOverrideContext,
11295 modelConfigID string,
11296 ) error {
11297 return client.UpdateChatModelOverride(
11298 ctx,
11299 overrideContext,
11300 codersdk.UpdateChatModelOverrideRequest{ModelConfigID: modelConfigID},
11301 )
11302 }
11303
11304 settings := []settingTest{
11305 {
11306 name: "General",
11307 context: codersdk.ChatModelOverrideContextGeneral,
11308 dbGet: func(ctx context.Context, db database.Store) (string, error) {
11309 return db.GetChatGeneralModelOverride(dbauthz.AsSystemRestricted(ctx))
11310 },
11311 dbUpsert: func(ctx context.Context, db database.Store, value string) error {
11312 return db.UpsertChatGeneralModelOverride(dbauthz.AsSystemRestricted(ctx), value)

Callers

nothing calls this directly

Calls 15

AsSystemRestrictedFunction · 0.92
CreateFirstUserFunction · 0.92
CreateAnotherUserFunction · 0.92
NewExperimentalClientFunction · 0.92
ContextFunction · 0.92
ChatModelOverrideContextTypeAlias · 0.92
requireSDKErrorFunction · 0.85
GetChatModelOverrideMethod · 0.80

Tested by

no test coverage detected