mirror of
https://github.com/trezor/trezor-suite.git
synced 2026-03-02 21:45:14 +01:00
37 lines
1.2 KiB
TypeScript
37 lines
1.2 KiB
TypeScript
import { getKeyByValue, getValueByKey } from '../src/enumUtils';
|
|
|
|
enum NumberEnum {
|
|
ZERO,
|
|
ONE,
|
|
}
|
|
|
|
enum StringEnum {
|
|
ZERO = '0',
|
|
ONE = '1',
|
|
}
|
|
|
|
describe('enumUtils', () => {
|
|
it('getKeyByValue', () => {
|
|
expect(getKeyByValue(NumberEnum, 0)).toEqual('ZERO');
|
|
expect(getKeyByValue(NumberEnum, 1)).toEqual('ONE');
|
|
// @ts-expect-error string value should not be accepted
|
|
expect(getKeyByValue(NumberEnum, '1')).toBeUndefined();
|
|
|
|
expect(getKeyByValue(StringEnum, StringEnum.ZERO)).toEqual('ZERO');
|
|
// @ts-expect-error number value should not be accepted
|
|
expect(getKeyByValue(StringEnum, 1)).toBeUndefined();
|
|
});
|
|
|
|
it('getValueByKey', () => {
|
|
expect(getValueByKey(NumberEnum, 'ONE')).toEqual(1);
|
|
// @ts-expect-error number value should not be accepted
|
|
expect(getValueByKey(NumberEnum, 1)).toBeUndefined();
|
|
// @ts-expect-error not a key
|
|
expect(getValueByKey(NumberEnum, '2')).toBeUndefined();
|
|
|
|
expect(getValueByKey(StringEnum, 'ONE')).toEqual('1');
|
|
// @ts-expect-error not a key
|
|
expect(getValueByKey(StringEnum, '0')).toBeUndefined();
|
|
});
|
|
});
|