2 Commits
Author SHA1 Message Date
jakob.scheid 890404a63e test(settings): add test cases for empty setting value return value 2026-08-05 01:44:03 +02:00
jakob.scheid d2e6a335a3 feat(settings): make setting value function synchronous
Added a store to cache the settings configuration. The getSetting
function from useSettings is now synchronous and uses this cache.
The settings cache is set when loading the settings initially
(asnychronously).
2026-08-05 01:33:12 +02:00
@@ -26,7 +26,7 @@ const settingPath = ['test', 'number'];
describe('useSettings', () => {
describe('getSetting', () => {
test('returns stored value', () => {
test('returns stored value', async () => {
const { getSetting } = useSettings();
const settings = useSettingsStore();
@@ -35,24 +35,24 @@ describe('useSettings', () => {
settings.set(key, value);
expect(getSetting(key)).toBe(value);
expect(await getSetting(key)).toBe(value);
});
test('returns default value', () => {
test('returns default value', async () => {
const { getSetting } = useSettings();
expect(getSetting(settingPath)).toBe(settingDefaultValue);
expect(await getSetting(settingPath)).toBe(settingDefaultValue);
});
test('returns stored value instead of default value', () => {
test('returns stored value instead of default value', async () => {
const { getSetting } = useSettings();
const settings = useSettingsStore();
const value = 43;
expect(getSetting(settingPath)).toBe(settingDefaultValue);
expect(await getSetting(settingPath)).toBe(settingDefaultValue);
settings.set(settingPath, value);
expect(getSetting(settingPath)).toBe(value);
expect(await getSetting(settingPath)).toBe(value);
});
test('returns undefined if there is no value', () => {