axios-miniprogram/test/adpater/getDefaultAdapter.test.ts

69 lines
1.3 KiB
TypeScript
Raw Normal View History

2023-04-05 08:40:00 +08:00
import { describe, test, expect, beforeEach, afterEach, vi } from 'vitest';
2023-04-22 16:12:32 +08:00
import { getDefaultAdapter } from '@/adpater/getDefaultAdapter';
2023-04-05 08:40:00 +08:00
const platforms = [
'uni',
'wx',
'my',
'swan',
'tt',
'qq',
'qh',
'ks',
'dd',
'jd',
'unknown',
];
2023-04-22 16:12:32 +08:00
describe.each(platforms)('src/adapter/getDefaultAdapter.ts', (p) => {
2023-04-05 08:40:00 +08:00
beforeEach(() => {
vi.stubGlobal(p, {
request: vi.fn(),
downloadFile: vi.fn(),
uploadFile: vi.fn(),
2023-04-05 08:40:00 +08:00
});
});
afterEach(() => {
vi.unstubAllGlobals();
});
test('应该可以获取到默认的平台适配器', () => {
2023-04-18 19:50:40 +08:00
const a = getDefaultAdapter();
2023-04-05 08:40:00 +08:00
if (p !== 'unknown') {
expect(a).toBeTypeOf('function');
} else {
// unknown 未知平台
expect(a).toBeUndefined();
}
});
});
describe.each(platforms)('src/adapter.ts', (p) => {
beforeEach(() => {
vi.stubGlobal(p, {});
});
afterEach(() => {
vi.unstubAllGlobals();
});
test('应该获取不到默认的平台适配器', () => {
2023-04-18 19:50:40 +08:00
expect(getDefaultAdapter()).toBeUndefined();
2023-04-05 08:40:00 +08:00
});
});
2023-04-10 22:53:15 +08:00
describe.each(platforms)('src/adapter.ts', (p) => {
beforeEach(() => {
vi.stubGlobal(p, undefined);
});
afterEach(() => {
vi.unstubAllGlobals();
});
test('应该获取不到默认的平台适配器', () => {
2023-04-18 19:50:40 +08:00
expect(getDefaultAdapter()).toBeUndefined();
2023-04-10 22:53:15 +08:00
});
});