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

Function TestDeploymentValues

coderd/deployment_test.go:14–51  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

12)
13
14func TestDeploymentValues(t *testing.T) {
15 t.Parallel()
16 hi := "hi"
17 ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
18 defer cancel()
19 cfg := coderdtest.DeploymentValues(t)
20 // values should be returned
21 cfg.BrowserOnly = true
22 // values should not be returned
23 cfg.OAuth2.Github.ClientSecret.Set(hi)
24 cfg.OIDC.ClientSecret.Set(hi)
25 cfg.OIDC.AuthURLParams.Set(`{"foo":"bar"}`)
26 cfg.OIDC.EmailField.Set("some_random_field_you_never_expected")
27 cfg.PostgresURL.Set(hi)
28 cfg.SCIMAPIKey.Set(hi)
29 cfg.ExternalTokenEncryptionKeys.Set("the_random_key_we_never_expected,an_other_key_we_never_unexpected")
30 cfg.Provisioner.DaemonPSK = "provisionersftw"
31
32 client := coderdtest.New(t, &coderdtest.Options{
33 DeploymentValues: cfg,
34 })
35 _ = coderdtest.CreateFirstUser(t, client)
36 scrubbed, err := client.DeploymentConfig(ctx)
37 require.NoError(t, err)
38 // ensure normal values pass through
39 require.EqualValues(t, true, scrubbed.Values.BrowserOnly.Value())
40 require.NotEmpty(t, cfg.OIDC.AuthURLParams)
41 require.EqualValues(t, cfg.OIDC.AuthURLParams, scrubbed.Values.OIDC.AuthURLParams)
42 require.NotEmpty(t, cfg.OIDC.EmailField)
43 require.EqualValues(t, cfg.OIDC.EmailField, scrubbed.Values.OIDC.EmailField)
44 // ensure secrets are removed
45 require.Empty(t, scrubbed.Values.OAuth2.Github.ClientSecret.Value())
46 require.Empty(t, scrubbed.Values.OIDC.ClientSecret.Value())
47 require.Empty(t, scrubbed.Values.PostgresURL.Value())
48 require.Empty(t, scrubbed.Values.SCIMAPIKey.Value())
49 require.Empty(t, scrubbed.Values.ExternalTokenEncryptionKeys.Value())
50 require.Empty(t, scrubbed.Values.Provisioner.DaemonPSK.Value())
51}
52
53func TestDeploymentStats(t *testing.T) {
54 t.Parallel()

Callers

nothing calls this directly

Calls 8

DeploymentValuesFunction · 0.92
NewFunction · 0.92
CreateFirstUserFunction · 0.92
DeploymentConfigMethod · 0.80
NotEmptyMethod · 0.80
SetMethod · 0.65
ValueMethod · 0.45
EmptyMethod · 0.45

Tested by

no test coverage detected