1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-25 03:20:23 +01:00
metamask-extension/ui/helpers/utils/accounts.test.js

80 lines
2.3 KiB
JavaScript
Raw Normal View History

import {
GOERLI_DISPLAY_NAME,
LINEA_GOERLI_DISPLAY_NAME,
MAINNET_DISPLAY_NAME,
SEPOLIA_DISPLAY_NAME,
} from '../../../shared/constants/network';
import { BackgroundColor } from '../constants/design-system';
import { getAccountNameErrorMessage, getAvatarNetworkColor } from './accounts';
const mockAccounts = [{ name: 'Account 1' }, { name: 'Account 2' }];
const mockLocalization = { t: jest.fn().mockReturnValue('Account') };
describe('Accounts', () => {
describe('#getAccountNameErrorMessage', () => {
it('does not allow duplicate names', () => {
const { isValidAccountName } = getAccountNameErrorMessage(
mockAccounts,
mockLocalization,
'Account 2',
'Account 3',
);
expect(isValidAccountName).toBe(false);
});
it('does not allow reserved name patterns', () => {
const { isValidAccountName } = getAccountNameErrorMessage(
mockAccounts,
mockLocalization,
'Account 7',
'Account 3',
);
expect(isValidAccountName).toBe(false);
});
it('does not allow reserved name patterns in lowercase', () => {
const { isValidAccountName } = getAccountNameErrorMessage(
mockAccounts,
mockLocalization,
'account 7',
'Account 3',
);
expect(isValidAccountName).toBe(false);
});
it('allows proposed name in lowercase', () => {
const { isValidAccountName } = getAccountNameErrorMessage(
mockAccounts,
mockLocalization,
'account 3',
'Account 3',
);
expect(isValidAccountName).toBe(true);
});
});
describe('#getAvatarNetworkColor', () => {
it('should return goerli', () => {
expect(getAvatarNetworkColor(GOERLI_DISPLAY_NAME)).toStrictEqual(
BackgroundColor.goerli,
);
});
it('should return lineaGoerli', () => {
expect(getAvatarNetworkColor(LINEA_GOERLI_DISPLAY_NAME)).toStrictEqual(
BackgroundColor.lineaGoerli,
);
});
it('should return sepolia', () => {
expect(getAvatarNetworkColor(SEPOLIA_DISPLAY_NAME)).toStrictEqual(
BackgroundColor.sepolia,
);
});
it('should return undefined', () => {
expect(getAvatarNetworkColor(MAINNET_DISPLAY_NAME)).toStrictEqual(
undefined,
);
});
});
});