Files
life-echo/app-expo/tests/core/settings/app-settings-large-text.test.ts

32 lines
1.0 KiB
TypeScript
Raw Normal View History

import {
computeLargeTextLevelFromStorage,
defaultLargeTextLevelForLanguage,
} from '@/core/settings/app-settings';
describe('defaultLargeTextLevelForLanguage', () => {
it('uses level 0 for English', () => {
expect(defaultLargeTextLevelForLanguage('en')).toBe(0);
});
it('uses level 1 for Chinese', () => {
expect(defaultLargeTextLevelForLanguage('zh')).toBe(1);
});
});
describe('computeLargeTextLevelFromStorage', () => {
it('prefers valid level key when present', () => {
expect(computeLargeTextLevelFromStorage('2', 'false', 'en')).toBe(2);
expect(computeLargeTextLevelFromStorage('0', 'true', 'zh')).toBe(0);
});
it('ignores invalid level key and uses legacy', () => {
expect(computeLargeTextLevelFromStorage('9', 'true', 'en')).toBe(1);
expect(computeLargeTextLevelFromStorage('', 'false', 'zh')).toBe(0);
});
it('uses language default when no usable values', () => {
expect(computeLargeTextLevelFromStorage(null, null, 'en')).toBe(0);
expect(computeLargeTextLevelFromStorage('', '', 'zh')).toBe(1);
});
});