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

Function TestUpdateChatProvider

coderd/exp_chats_test.go:2632–2923  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

2630}
2631
2632func TestUpdateChatProvider(t *testing.T) {
2633 t.Parallel()
2634 t.Skip("legacy chat provider API removed in favor of AI provider API")
2635
2636 t.Run("Success", func(t *testing.T) {
2637 t.Parallel()
2638
2639 ctx := testutil.Context(t, testutil.WaitLong)
2640 client := newChatClient(t)
2641 _ = coderdtest.CreateFirstUser(t, client.Client)
2642
2643 provider, err := client.CreateChatProvider(ctx, codersdk.CreateChatProviderConfigRequest{
2644 Provider: "openai",
2645 APIKey: "test-api-key",
2646 })
2647 require.NoError(t, err)
2648
2649 enabled := false
2650 baseURL := "https://example.com/v1"
2651 updated, err := client.UpdateChatProvider(ctx, provider.ID, codersdk.UpdateChatProviderConfigRequest{
2652 DisplayName: "OpenAI Updated",
2653 Enabled: &enabled,
2654 BaseURL: &baseURL,
2655 })
2656 require.NoError(t, err)
2657 require.Equal(t, provider.ID, updated.ID)
2658 require.Equal(t, "OpenAI Updated", updated.DisplayName)
2659 require.False(t, updated.Enabled)
2660 require.Equal(t, baseURL, updated.BaseURL)
2661 })
2662
2663 t.Run("AllowsClearingBedrockAPIKeyWithCentralAPIKeyEnabled", func(t *testing.T) {
2664 t.Parallel()
2665
2666 ctx := testutil.Context(t, testutil.WaitLong)
2667 client := newChatClient(t)
2668 _ = coderdtest.CreateFirstUser(t, client.Client)
2669
2670 provider, err := client.CreateChatProvider(ctx, codersdk.CreateChatProviderConfigRequest{
2671 Provider: "bedrock",
2672 DisplayName: "AWS Bedrock",
2673 APIKey: "bedrock-bearer-token",
2674 CentralAPIKeyEnabled: ptr.Ref(true),
2675 })
2676 require.NoError(t, err)
2677 require.True(t, provider.HasAPIKey)
2678 require.True(t, provider.CentralAPIKeyEnabled)
2679
2680 updated, err := client.UpdateChatProvider(ctx, provider.ID, codersdk.UpdateChatProviderConfigRequest{
2681 APIKey: ptr.Ref(""),
2682 CentralAPIKeyEnabled: ptr.Ref(true),
2683 })
2684 require.NoError(t, err)
2685 require.Equal(t, provider.ID, updated.ID)
2686 require.Equal(t, "bedrock", updated.Provider)
2687 require.False(t, updated.HasAPIKey)
2688 require.True(t, updated.CentralAPIKeyEnabled)
2689 })

Callers

nothing calls this directly

Calls 15

UpdateChatProviderMethod · 0.95
ContextFunction · 0.92
CreateFirstUserFunction · 0.92
RefFunction · 0.92
ReadBodyAsErrorFunction · 0.92
CreateAnotherUserFunction · 0.92
NewExperimentalClientFunction · 0.92
requireSDKErrorFunction · 0.85
chatDeploymentValuesFunction · 0.85
SkipMethod · 0.80
CreateChatProviderMethod · 0.80

Tested by

no test coverage detected