use os detection for initial dark mode setting

This commit is contained in:
David Lechner
2021-01-15 10:54:57 -06:00
parent 8f71ace56d
commit b38a47f4e6
3 changed files with 39 additions and 1 deletions
+20 -1
View File
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: MIT
// Copyright (c) 2021 The Pybricks Authors
import { isMacOS } from './os';
import { isMacOS, prefersDarkMode } from './os';
describe('isMacOS', () => {
test('is true', () => {
@@ -13,3 +13,22 @@ describe('isMacOS', () => {
expect(isMacOS()).toBeFalsy();
});
});
describe('prefersDarkMode', () => {
test('is true', () => {
window.matchMedia = jest.fn().mockReturnValue({
matches: true,
} as MediaQueryList);
expect(prefersDarkMode()).toBeTruthy();
});
test('is false', () => {
// @ts-expect-error 2790
delete window.matchMedia;
expect(prefersDarkMode()).toBeFalsy();
window.matchMedia = jest.fn().mockReturnValue({
matches: false,
} as MediaQueryList);
expect(prefersDarkMode()).toBeFalsy();
});
});