Files
EasyFlow/easyflow-ui-admin/app/src/router/navigation-user-info.test.ts
陈子默 da59c713f9 fix: 提升管理端启动与导航稳定性
- 等待初始路由就绪并提供可恢复的启动失败页面

- 收敛失效登录导航并按需加载 SVG 图标资源
2026-07-24 19:02:28 +08:00

41 lines
1.2 KiB
TypeScript

import { describe, expect, it, vi } from 'vitest';
import { resolveNavigationUserInfo } from './navigation-user-info';
describe('navigation user info', () => {
it('uses cached user info without issuing a request', async () => {
const cachedUserInfo = { id: 1 };
const fetchUserInfo = vi.fn();
await expect(
resolveNavigationUserInfo({
cachedUserInfo,
fetchUserInfo,
getAccessToken: () => 'token',
}),
).resolves.toBe(cachedUserInfo);
expect(fetchUserInfo).not.toHaveBeenCalled();
});
it('returns null after an expired token has been cleared', async () => {
await expect(
resolveNavigationUserInfo({
cachedUserInfo: null,
fetchUserInfo: () => Promise.reject(new Error('expired')),
getAccessToken: () => null,
}),
).resolves.toBeNull();
});
it('keeps non-authentication failures visible', async () => {
const error = new Error('network unavailable');
await expect(
resolveNavigationUserInfo({
cachedUserInfo: null,
fetchUserInfo: () => Promise.reject(error),
getAccessToken: () => 'token',
}),
).rejects.toBe(error);
});
});