access.test.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { createPinia, setActivePinia } from 'pinia';
  2. import { beforeEach, describe, expect, it } from 'vitest';
  3. import { useAccessStore } from './access';
  4. describe('useAccessStore', () => {
  5. beforeEach(() => {
  6. setActivePinia(createPinia());
  7. });
  8. it('updates accessMenus state', () => {
  9. const store = useAccessStore();
  10. expect(store.accessMenus).toEqual([]);
  11. store.setAccessMenus([{ name: 'Dashboard', path: '/dashboard' }]);
  12. expect(store.accessMenus).toEqual([
  13. { name: 'Dashboard', path: '/dashboard' },
  14. ]);
  15. });
  16. it('updates accessToken state correctly', () => {
  17. const store = useAccessStore();
  18. expect(store.accessToken).toBeNull(); // 初始状态
  19. store.setAccessToken('abc123');
  20. expect(store.accessToken).toBe('abc123');
  21. });
  22. it('returns the correct accessToken', () => {
  23. const store = useAccessStore();
  24. store.setAccessToken('xyz789');
  25. expect(store.accessToken).toBe('xyz789');
  26. });
  27. // 测试设置空的访问菜单列表
  28. it('handles empty accessMenus correctly', () => {
  29. const store = useAccessStore();
  30. store.setAccessMenus([]);
  31. expect(store.accessMenus).toEqual([]);
  32. });
  33. // 测试设置空的访问路由列表
  34. it('handles empty accessRoutes correctly', () => {
  35. const store = useAccessStore();
  36. store.setAccessRoutes([]);
  37. expect(store.accessRoutes).toEqual([]);
  38. });
  39. });