Plua模式开发
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
const test = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('node:fs');
|
||||
|
||||
test('address sources normalize supported countries and return local seeds', () => {
|
||||
const source = fs.readFileSync('data/address-sources.js', 'utf8');
|
||||
const globalScope = {};
|
||||
const api = new Function('self', `${source}; return self.MultiPageAddressSources;`)(globalScope);
|
||||
|
||||
assert.equal(api.normalizeCountryCode('Deutschland'), 'DE');
|
||||
assert.equal(api.normalizeCountryCode('澳大利亚'), 'AU');
|
||||
assert.equal(api.normalizeCountryCode('unknown'), '');
|
||||
|
||||
const deSeed = api.getAddressSeedForCountry('DE');
|
||||
assert.equal(deSeed.countryCode, 'DE');
|
||||
assert.equal(deSeed.suggestionIndex, 1);
|
||||
assert.equal(Boolean(deSeed.query), true);
|
||||
assert.equal(Boolean(deSeed.fallback.city), true);
|
||||
|
||||
const fallbackSeed = api.getAddressSeedForCountry('unknown', { fallbackCountry: 'AU' });
|
||||
assert.equal(fallbackSeed.countryCode, 'AU');
|
||||
assert.equal(fallbackSeed.fallback.region, 'New South Wales');
|
||||
});
|
||||
Reference in New Issue
Block a user