UNPKG

country-data-list

Version:

Data about countries - like their ISO codes and currencies

32 lines (28 loc) 909 B
import { assert } from 'chai'; import * as countryData from '../src/index.js'; const assertValidReferences = ( referenceListName, referenceIdKey, listName, listKey ) => { const validIds = countryData[referenceListName].all.map( (data) => data[referenceIdKey] ); countryData[listName].all.forEach((item) => { describe(`${listKey} of ${item.name}`, () => { it(`should be a valid reference to ${referenceIdKey} of ${referenceListName}`, () => { item[listKey].forEach((id) => { assert( validIds.includes(id), `Expected ${id} in ${listKey} of ${listName} to be a valid entry in ${referenceListName}` ); }); }); }); }); }; describe('cross references', () => { assertValidReferences('currencies', 'code', 'countries', 'currencies'); assertValidReferences('languages', 'alpha3', 'countries', 'languages'); });