|
1 | 1 | import { Theme } from '../types'; |
2 | | -import { |
3 | | - getTheme, |
4 | | - mapThemeModeToColorScheme, |
5 | | - setScrollbarTheme, |
6 | | -} from './theme'; |
| 2 | +import { mapThemeModeToColorMode, mapThemeModeToColorScheme } from './theme'; |
7 | 3 |
|
8 | 4 | describe('renderer/utils/theme.ts', () => { |
9 | | - const htmlElement = document.createElement('html'); |
10 | | - |
11 | | - beforeEach(() => { |
12 | | - document.querySelector = jest.fn(() => htmlElement); |
13 | | - }); |
14 | | - |
15 | | - it('should change to light mode', () => { |
16 | | - setScrollbarTheme('day'); |
17 | | - expect(getTheme()).toBe(Theme.LIGHT); |
18 | | - }); |
19 | | - |
20 | | - it('should change to dark mode', () => { |
21 | | - setScrollbarTheme('night'); |
22 | | - expect(getTheme()).toBe(Theme.DARK); |
23 | | - }); |
24 | | - |
25 | | - it("should use the system's mode - light", () => { |
26 | | - Object.defineProperty(window, 'matchMedia', { |
27 | | - writable: true, |
28 | | - value: jest.fn().mockImplementation((_query) => ({ |
29 | | - matches: false, |
30 | | - })), |
31 | | - }); |
32 | | - setScrollbarTheme(); |
33 | | - expect(getTheme()).toBe(Theme.LIGHT); |
34 | | - }); |
35 | | - |
36 | | - it("should use the system's mode - dark", () => { |
37 | | - Object.defineProperty(window, 'matchMedia', { |
38 | | - writable: true, |
39 | | - value: jest.fn().mockImplementation((_query) => ({ |
40 | | - matches: true, |
41 | | - })), |
42 | | - }); |
43 | | - setScrollbarTheme(); |
44 | | - expect(getTheme()).toBe(Theme.DARK); |
| 5 | + it('should map theme mode to github primer color mode', () => { |
| 6 | + expect(mapThemeModeToColorMode(Theme.LIGHT)).toBe('day'); |
| 7 | + expect(mapThemeModeToColorMode(Theme.LIGHT_HIGH_CONTRAST)).toBe('day'); |
| 8 | + expect(mapThemeModeToColorMode(Theme.LIGHT_COLORBLIND)).toBe('day'); |
| 9 | + expect(mapThemeModeToColorMode(Theme.LIGHT_TRITANOPIA)).toBe('day'); |
| 10 | + expect(mapThemeModeToColorMode(Theme.DARK)).toBe('night'); |
| 11 | + expect(mapThemeModeToColorMode(Theme.DARK_HIGH_CONTRAST)).toBe('night'); |
| 12 | + expect(mapThemeModeToColorMode(Theme.DARK_COLORBLIND)).toBe('night'); |
| 13 | + expect(mapThemeModeToColorMode(Theme.DARK_TRITANOPIA)).toBe('night'); |
| 14 | + expect(mapThemeModeToColorMode(Theme.DARK_DIMMED)).toBe('night'); |
| 15 | + expect(mapThemeModeToColorMode(Theme.SYSTEM)).toBe('auto'); |
45 | 16 | }); |
46 | 17 |
|
47 | | - it('should map theme mode to github primer provider', () => { |
| 18 | + it('should map theme mode to github primer color scheme', () => { |
48 | 19 | expect(mapThemeModeToColorScheme(Theme.LIGHT)).toBe('light'); |
49 | 20 | expect(mapThemeModeToColorScheme(Theme.LIGHT_HIGH_CONTRAST)).toBe( |
50 | 21 | 'light_high_contrast', |
|
0 commit comments