mirror of
https://github.com/aws-actions/configure-aws-credentials.git
synced 2026-09-03 06:05:04 +09:00
chore: increase test coverage
This commit is contained in:
+3
-2
@@ -29,7 +29,7 @@ export function sanitizeGithubWorkflowName(name: string) {
|
|||||||
const nameTruncated = nameWithoutSpecialCharacters.slice(0, MAX_TAG_VALUE_LENGTH);
|
const nameTruncated = nameWithoutSpecialCharacters.slice(0, MAX_TAG_VALUE_LENGTH);
|
||||||
return nameTruncated;
|
return nameTruncated;
|
||||||
}
|
}
|
||||||
|
/* c8 ignore start */
|
||||||
export function errorMessage(error: unknown) {
|
export function errorMessage(error: unknown) {
|
||||||
return error instanceof Error ? error.message : String(error);
|
return error instanceof Error ? error.message : String(error);
|
||||||
}
|
}
|
||||||
@@ -37,8 +37,9 @@ export function errorMessage(error: unknown) {
|
|||||||
export function isDefined<T>(i: T | undefined | null): i is T {
|
export function isDefined<T>(i: T | undefined | null): i is T {
|
||||||
return i !== undefined && i !== null;
|
return i !== undefined && i !== null;
|
||||||
}
|
}
|
||||||
|
/* c8 ignore stop */
|
||||||
|
|
||||||
function defaultSleep(ms: number) {
|
export function defaultSleep(ms: number) {
|
||||||
return new Promise((resolve) => setTimeout(resolve, ms));
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
||||||
}
|
}
|
||||||
let sleep = defaultSleep;
|
let sleep = defaultSleep;
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
import * as helpers from '../src/helpers';
|
||||||
|
describe('helpers', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
jest.resetModules();
|
||||||
|
jest.clearAllMocks();
|
||||||
|
});
|
||||||
|
|
||||||
|
test('removes brackets from GitHub Actor', () => {
|
||||||
|
expect(helpers.sanitizeGithubActor('foo[bot]')).toEqual('foo_bot_');
|
||||||
|
});
|
||||||
|
|
||||||
|
test('removes special characters from worflow names', () => {
|
||||||
|
expect(helpers.sanitizeGithubWorkflowName('sdf234@#$%$^&*()_+{}|:"<>?')).toEqual('sdf234@__________+___:_<>?');
|
||||||
|
});
|
||||||
|
|
||||||
|
test('can sleep', async () => {
|
||||||
|
const sleep = helpers.defaultSleep(10);
|
||||||
|
await expect(Promise.race([sleep, new Promise((_res, rej) => setTimeout(rej, 20))])).resolves;
|
||||||
|
});
|
||||||
|
|
||||||
|
test("backoff function doesn't retry non-retryable errors", async () => {
|
||||||
|
const fn = jest.fn().mockRejectedValue('i am not retryable');
|
||||||
|
await expect(helpers.retryAndBackoff(fn, false)).rejects.toMatch('i am not retryable');
|
||||||
|
expect(fn).toHaveBeenCalledTimes(1);
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user