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

Function TestInjectionUserAppearance

site/site_test.go:162–226  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

160}
161
162func TestInjectionUserAppearance(t *testing.T) {
163 t.Parallel()
164
165 siteFS := fstest.MapFS{
166 "index.html": &fstest.MapFile{
167 Data: []byte("{{ .UserAppearance }}"),
168 },
169 }
170 db, _ := dbtestutil.NewDB(t)
171 handler, err := site.New(&site.Options{
172 Telemetry: telemetry.NewNoop(),
173 Database: db,
174 SiteFS: siteFS,
175 })
176 require.NoError(t, err)
177
178 user := dbgen.User(t, db, database.User{})
179 ctx := context.Background()
180 _, err = db.UpdateUserThemePreference(ctx, database.UpdateUserThemePreferenceParams{
181 UserID: user.ID,
182 ThemePreference: "dark-tritan",
183 })
184 require.NoError(t, err)
185 _, err = db.UpdateUserThemeMode(ctx, database.UpdateUserThemeModeParams{
186 UserID: user.ID,
187 ThemeMode: string(codersdk.ThemeModeSync),
188 })
189 require.NoError(t, err)
190 _, err = db.UpdateUserThemeLight(ctx, database.UpdateUserThemeLightParams{
191 UserID: user.ID,
192 ThemeLight: "light-tritan",
193 })
194 require.NoError(t, err)
195 _, err = db.UpdateUserThemeDark(ctx, database.UpdateUserThemeDarkParams{
196 UserID: user.ID,
197 ThemeDark: "dark-tritan",
198 })
199 require.NoError(t, err)
200 _, err = db.UpdateUserTerminalFont(ctx, database.UpdateUserTerminalFontParams{
201 UserID: user.ID,
202 TerminalFont: string(codersdk.TerminalFontFiraCode),
203 })
204 require.NoError(t, err)
205 _, token := dbgen.APIKey(t, db, database.APIKey{
206 UserID: user.ID,
207 ExpiresAt: time.Now().Add(time.Hour),
208 })
209
210 r := httptest.NewRequest("GET", "/", nil)
211 r.Header.Set(codersdk.SessionTokenHeader, token)
212 rw := httptest.NewRecorder()
213
214 handler.ServeHTTP(rw, r)
215 require.Equal(t, http.StatusOK, rw.Code)
216 var got codersdk.UserAppearanceSettings
217 err = json.Unmarshal([]byte(html.UnescapeString(rw.Body.String())), &got)
218 require.NoError(t, err)
219 require.Equal(t, codersdk.UserAppearanceSettings{

Callers

nothing calls this directly

Calls 15

NewDBFunction · 0.92
NewFunction · 0.92
NewNoopFunction · 0.92
UserFunction · 0.92
APIKeyFunction · 0.92
UpdateUserThemeModeMethod · 0.65
UpdateUserThemeLightMethod · 0.65
UpdateUserThemeDarkMethod · 0.65
AddMethod · 0.65
SetMethod · 0.65

Tested by

no test coverage detected