fix login and register
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user