UNPKG

@fooloomanzoo/property-mixins

Version:

mixin for custom elements to extends property mixins for data formats

98 lines (79 loc) 3.82 kB
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, minimum-scale=1, initial-scale=1, user-scalable=yes"> <title>intl-datetime-format-mixin test</title> <script src="../../../@webcomponents/webcomponentsjs/webcomponents-loader.js"></script> <script src="../../../wct-browser-legacy/browser.js"></script> <script src="../../../@polymer/iron-test-helpers/test-helpers.js" type="module"></script> <script type="module" src="../demo/elements/basic-intl-datetime-format-element.js"></script> </head> <body> <test-fixture id="basic"> <template> <basic-intl-datetime-format-element></basic-intl-datetime-format-element> </template> </test-fixture> <test-fixture id="en"> <template> <basic-intl-datetime-format-element locale="en"></basic-intl-datetime-format-element> </template> </test-fixture> <test-fixture id="de"> <template> <basic-intl-datetime-format-element locale="de"></basic-intl-datetime-format-element> </template> </test-fixture> <script type="module"> import { Base } from '@polymer/polymer/polymer-legacy.js'; import { getParams, mixinSuite } from '@fooloomanzoo/input-picker-pattern/utils/wct-mixin-test-helper.js'; const params = getParams(); mixinSuite(['basic-intl-datetime-format-element']); suite('basic', () => { let element; setup(function() { element = fixture('basic'); }); test('default format', done => { assert.isDefined(element.locale, 'locale is defined'); assert.isDefined(element.decimalSeparator, 'decimalSeparator is defined'); assert.isDefined(element.dateSeparator, 'dateSeparator is defined'); assert.isDefined(element.timeSeparator, 'timeSeparator is defined'); assert.isDefined(element.amString, 'amString is defined'); assert.isDefined(element.pmString, 'pmString is defined'); assert.isDefined(element.dateOrder, 'dateOrder is defined'); done(); }); }); suite('setting locale="en"', () => { let element; setup(function() { element = fixture('en'); }); test('datetime format', done => { assert.equal(element.decimalSeparator, '.', 'decimalSeparator should be set to "english"-format'); assert.equal(element.dateSeparator, '/', 'dateSeparator should be set to "english"-format'); assert.equal(element.timeSeparator, ':', 'timeSeparator should be set to "english"-format'); assert.deepEqual(element.dateOrder.parts, ['month', 'day', 'year'], 'dateOrder should be set to "english"-format'); assert.equal(element.dateOrder.timeFirst, false, 'dateOrder should be set to "english"-format'); done(); }); }); suite('setting locale="de"', () => { let element; setup(function() { element = fixture('de'); }); test('datetime format', done => { assert.equal(element.decimalSeparator, ',', 'decimalSeparator should be set to "german"-format'); assert.equal(element.dateSeparator, '.', 'dateSeparator should be set to "german"-format'); assert.equal(element.timeSeparator, ':', 'timeSeparator should be set to "german"-format'); assert.deepEqual(element.dateOrder.parts, ['day', 'month', 'year'], 'dateOrder should be set to "german"-format'); assert.equal(element.dateOrder.timeFirst, false, 'dateOrder should be set to "german"-format'); done(); }); }); </script> </body> </html>