Skip to content

Commit c565541

Browse files
✅ test: Add tests for general settings selectors in user settings slice. (lobehub#6905)
Co-authored-by: gru-agent[bot] <185149714+gru-agent[bot]@users.noreply.github.com>
1 parent e6c5d08 commit c565541

File tree

1 file changed

+90
-0
lines changed

1 file changed

+90
-0
lines changed

src/store/user/slices/settings/selectors/general.test.ts

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,20 @@ import { merge } from '@/utils/merge';
55
import { userGeneralSettingsSelectors } from './general';
66

77
describe('settingsSelectors', () => {
8+
describe('generalConfig', () => {
9+
it('should return general settings', () => {
10+
const s: UserState = merge(initialState, {
11+
settings: {
12+
general: { fontSize: 12 },
13+
},
14+
});
15+
16+
const result = userGeneralSettingsSelectors.config(s as UserStore);
17+
18+
expect(result).toEqual({ fontSize: 12 });
19+
});
20+
});
21+
822
describe('fontSize', () => {
923
it('should return the fontSize', () => {
1024
const s: UserState = merge(initialState, {
@@ -18,4 +32,80 @@ describe('settingsSelectors', () => {
1832
expect(result).toBe(12);
1933
});
2034
});
35+
36+
describe('neutralColor', () => {
37+
it('should return undefined if general settings not exists', () => {
38+
const s: UserState = merge(initialState, {
39+
settings: {
40+
general: undefined,
41+
},
42+
});
43+
44+
const result = userGeneralSettingsSelectors.neutralColor(s as UserStore);
45+
46+
expect(result).toBeUndefined();
47+
});
48+
49+
it('should return undefined if neutralColor not set', () => {
50+
const s: UserState = merge(initialState, {
51+
settings: {
52+
general: {},
53+
},
54+
});
55+
56+
const result = userGeneralSettingsSelectors.neutralColor(s as UserStore);
57+
58+
expect(result).toBeUndefined();
59+
});
60+
61+
it('should return the neutralColor', () => {
62+
const s: UserState = merge(initialState, {
63+
settings: {
64+
general: { neutralColor: '#000000' },
65+
},
66+
});
67+
68+
const result = userGeneralSettingsSelectors.neutralColor(s as UserStore);
69+
70+
expect(result).toBe('#000000');
71+
});
72+
});
73+
74+
describe('primaryColor', () => {
75+
it('should return undefined if general settings not exists', () => {
76+
const s: UserState = merge(initialState, {
77+
settings: {
78+
general: undefined,
79+
},
80+
});
81+
82+
const result = userGeneralSettingsSelectors.primaryColor(s as UserStore);
83+
84+
expect(result).toBeUndefined();
85+
});
86+
87+
it('should return undefined if primaryColor not set', () => {
88+
const s: UserState = merge(initialState, {
89+
settings: {
90+
general: {},
91+
},
92+
});
93+
94+
const result = userGeneralSettingsSelectors.primaryColor(s as UserStore);
95+
96+
expect(result).toBeUndefined();
97+
});
98+
99+
it('should return the primaryColor', () => {
100+
const s: UserState = merge(initialState, {
101+
settings: {
102+
general: { primaryColor: '#ffffff' },
103+
},
104+
});
105+
106+
const result = userGeneralSettingsSelectors.primaryColor(s as UserStore);
107+
108+
expect(result).toBe('#ffffff');
109+
});
110+
});
21111
});

0 commit comments

Comments
 (0)