Changeset View
Changeset View
Standalone View
Standalone View
web/cashtab/src/utils/__tests__/validation.test.js
Show All 15 Lines | import { | ||||
isValidEtokenBurnAmount, | isValidEtokenBurnAmount, | ||||
isValidTokenId, | isValidTokenId, | ||||
isValidXecAirdrop, | isValidXecAirdrop, | ||||
isValidAirdropOutputsArray, | isValidAirdropOutputsArray, | ||||
isValidAirdropExclusionArray, | isValidAirdropExclusionArray, | ||||
isValidContactList, | isValidContactList, | ||||
parseInvalidSettingsForMigration, | parseInvalidSettingsForMigration, | ||||
isValidCashtabCache, | isValidCashtabCache, | ||||
validateMnemonicWordList, | |||||
} from '../validation'; | } from '../validation'; | ||||
import { currency } from 'components/Common/Ticker.js'; | import { currency } from 'components/Common/Ticker.js'; | ||||
import { fromSatoshisToXec } from 'utils/cashMethods'; | import { fromSatoshisToXec } from 'utils/cashMethods'; | ||||
import { | import { | ||||
stStatsValid, | stStatsValid, | ||||
noCovidStatsValid, | noCovidStatsValid, | ||||
noCovidStatsInvalid, | noCovidStatsInvalid, | ||||
cGenStatsValid, | cGenStatsValid, | ||||
Show All 11 Lines | |||||
} from '../__mocks__/mockXecAirdropExclusionList'; | } from '../__mocks__/mockXecAirdropExclusionList'; | ||||
import { | import { | ||||
validCashtabCache, | validCashtabCache, | ||||
cashtabCacheWithOneBadTokenId, | cashtabCacheWithOneBadTokenId, | ||||
cashtabCacheWithDecimalNotNumber, | cashtabCacheWithDecimalNotNumber, | ||||
cashtabCacheWithTokenNameNotString, | cashtabCacheWithTokenNameNotString, | ||||
cashtabCacheWithMissingTokenName, | cashtabCacheWithMissingTokenName, | ||||
} from 'utils/__mocks__/mockCashtabCache'; | } from 'utils/__mocks__/mockCashtabCache'; | ||||
import * as bip39 from 'bip39'; | |||||
describe('Validation utils', () => { | describe('Validation utils', () => { | ||||
it(`validateMnemonicWordList() returns a success message for a valid mnemonic`, () => { | |||||
const validMnemonic = | |||||
'labor tail bulb distance estate collect lecture into smile differ yard legal'; | |||||
expect( | |||||
validateMnemonicWordList(validMnemonic, bip39.wordlists.english), | |||||
).toBe('Valid mnemonic'); | |||||
}); | |||||
it(`validateMnemonicWordList() returns an error message for an invalid mnemonic`, () => { | |||||
const validMnemonic = | |||||
'labor tail bulb not valid collect lecture into smile differ yard legal'; | |||||
expect( | |||||
validateMnemonicWordList(validMnemonic, bip39.wordlists.english), | |||||
).toBe('Invalid mnemonic'); | |||||
}); | |||||
it(`validateMnemonicWordList() returns an error message for an empty mnemonic`, () => { | |||||
expect(validateMnemonicWordList('', bip39.wordlists.english)).toBe( | |||||
'Invalid mnemonic', | |||||
); | |||||
}); | |||||
it(`Returns 'false' if ${currency.ticker} send amount is a valid send amount`, () => { | it(`Returns 'false' if ${currency.ticker} send amount is a valid send amount`, () => { | ||||
expect(shouldRejectAmountInput('10', currency.ticker, 20.0, 300)).toBe( | expect(shouldRejectAmountInput('10', currency.ticker, 20.0, 300)).toBe( | ||||
false, | false, | ||||
); | ); | ||||
}); | }); | ||||
it(`Returns 'false' if ${currency.ticker} send amount is a valid send amount in USD`, () => { | it(`Returns 'false' if ${currency.ticker} send amount is a valid send amount in USD`, () => { | ||||
// Here, user is trying to send $170 USD, where 1 BCHA = $20 USD, and the user has a balance of 15 BCHA or $300 | // Here, user is trying to send $170 USD, where 1 BCHA = $20 USD, and the user has a balance of 15 BCHA or $300 | ||||
expect(shouldRejectAmountInput('170', 'USD', 20.0, 15)).toBe(false); | expect(shouldRejectAmountInput('170', 'USD', 20.0, 15)).toBe(false); | ||||
▲ Show 20 Lines • Show All 676 Lines • Show Last 20 Lines |