mirror of
https://github.com/codecov/codecov-action.git
synced 2026-02-08 03:57:26 +00:00
72 lines
2 KiB
TypeScript
72 lines
2 KiB
TypeScript
import {
|
|
getBaseUrl,
|
|
getPlatform,
|
|
isValidPlatform,
|
|
isWindows,
|
|
PLATFORMS,
|
|
} from './helpers';
|
|
|
|
let OLDOS = process.env.RUNNER_OS;
|
|
|
|
beforeEach(() => {
|
|
jest.resetModules();
|
|
OLDOS = process.env.RUNNER_OS;
|
|
});
|
|
|
|
afterAll(() => {
|
|
process.env.RUNNER_OS = OLDOS;
|
|
});
|
|
|
|
test('getPlatform', () => {
|
|
expect(getPlatform('linux')).toBe('linux');
|
|
expect(getPlatform('windows')).toBe('windows');
|
|
|
|
const defaultPlatform =
|
|
process.env.RUNNER_OS ? process.env.RUNNER_OS.toLowerCase() : 'linux';
|
|
expect(getPlatform('fakeos')).toBe(defaultPlatform);
|
|
expect(getPlatform()).toBe(defaultPlatform);
|
|
|
|
process.env.RUNNER_OS = 'macos';
|
|
expect(getPlatform('fakeos')).toBe('macos');
|
|
expect(getPlatform()).toBe('macos');
|
|
|
|
process.env.RUNNER_OS = 'alsofakeos';
|
|
expect(getPlatform()).toBe('linux');
|
|
expect(getPlatform('fakeos')).toBe('linux');
|
|
});
|
|
|
|
test('getBaseUrl', () => {
|
|
expect(PLATFORMS.map((platform) => {
|
|
return getBaseUrl(platform, 'latest');
|
|
})).toEqual([
|
|
'https://uploader.codecov.io/latest/aarch64/codecov',
|
|
'https://uploader.codecov.io/latest/alpine/codecov',
|
|
'https://uploader.codecov.io/latest/linux/codecov',
|
|
'https://uploader.codecov.io/latest/macos/codecov',
|
|
'https://uploader.codecov.io/latest/windows/codecov.exe',
|
|
]);
|
|
|
|
expect(PLATFORMS.map((platform) => {
|
|
return getBaseUrl(platform, 'v0.1.0_8880');
|
|
})).toEqual([
|
|
'https://uploader.codecov.io/v0.1.0_8880/aarch64/codecov',
|
|
'https://uploader.codecov.io/v0.1.0_8880/alpine/codecov',
|
|
'https://uploader.codecov.io/v0.1.0_8880/linux/codecov',
|
|
'https://uploader.codecov.io/v0.1.0_8880/macos/codecov',
|
|
'https://uploader.codecov.io/v0.1.0_8880/windows/codecov.exe',
|
|
]);
|
|
});
|
|
|
|
test('isWindows', () => {
|
|
expect(PLATFORMS.map((platform) => {
|
|
return isWindows(platform);
|
|
})).toEqual([false, false, false, false, true]);
|
|
});
|
|
|
|
test('isValidPlatform', () => {
|
|
expect(PLATFORMS.map((platform) => {
|
|
return isValidPlatform(platform);
|
|
})).toEqual([true, true, true, true, true]);
|
|
|
|
expect(isValidPlatform('fakeos')).toBeFalsy();
|
|
});
|