fix login and register

This commit is contained in:
2026-03-18 16:23:58 +08:00
parent 9cba09d731
commit 2d063870fe
6 changed files with 480 additions and 5 deletions
+34 -1
View File
@@ -73,6 +73,28 @@ describe('useUserStore', () => {
})
})
describe('setToken with remember=false', () => {
it('does not persist tokens to localStorage', () => {
const store = useUserStore()
store.setToken('h.p.s', 'r.p.s', false)
expect(store.token).toBe('h.p.s')
expect(store.refreshToken).toBe('r.p.s')
expect(localStorage.getItem('access_token')).toBeNull()
expect(localStorage.getItem('refresh_token')).toBeNull()
})
it('clears existing user from localStorage', () => {
localStorage.setItem('user', JSON.stringify({ id: 1, username: 'old' }))
const store = useUserStore()
store.setToken('h.p.s', 'r.p.s', false)
expect(localStorage.getItem('user')).toBeNull()
})
})
describe('setUser', () => {
it('sets user info in store and localStorage', () => {
const store = useUserStore()
@@ -85,6 +107,17 @@ describe('useUserStore', () => {
expect(store.isAdmin).toBe(false)
expect(JSON.parse(localStorage.getItem('user')!)).toEqual(userInfo)
})
it('does not write to localStorage when remember=false', () => {
const store = useUserStore()
store.setToken('h.p.s', 'r.p.s', false)
const userInfo = { id: 1, username: 'test', email: 't@t.com', role: 'user', status: 1 }
store.setUser(userInfo)
expect(store.user).toEqual(userInfo)
expect(localStorage.getItem('user')).toBeNull()
})
})
describe('logout', () => {
@@ -114,7 +147,7 @@ describe('useUserStore', () => {
const store = useUserStore()
const result = await store.fetchCurrentUser()
expect(api.get).toHaveBeenCalledWith('/api/v1/auth/me')
expect(api.get).toHaveBeenCalledWith('/api/v1/me')
expect(result).toEqual(mockUser)
expect(store.user).toEqual(mockUser)
expect(store.isAdmin).toBe(true)