Skip to content

Commit 97c5b5e

Browse files
authored
test: simplify date-time-picker i18n tests to not use Polymer (#9116)
1 parent 9779fd4 commit 97c5b5e

File tree

1 file changed

+18
-73
lines changed

1 file changed

+18
-73
lines changed

packages/date-time-picker/test/i18n.test.js

Lines changed: 18 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,33 @@
11
import { expect } from '@vaadin/chai-plugins';
22
import { aTimeout, fixtureSync, nextFrame, nextRender } from '@vaadin/testing-helpers';
33
import '../src/vaadin-date-time-picker.js';
4-
import { html, PolymerElement } from '@polymer/polymer/polymer-element.js';
5-
import { formatISOTime, parseISOTime } from '@vaadin/time-picker/src/vaadin-time-picker-helper.js';
6-
7-
customElements.define(
8-
'dtp-i18n-default',
9-
class extends PolymerElement {
10-
static get template() {
11-
return html`<vaadin-date-time-picker id="dateTimePicker" i18n="[[i18n]]"></vaadin-date-time-picker>`;
12-
}
13-
14-
static get properties() {
15-
return {
16-
i18n: {
17-
type: Object,
18-
value: () => {
19-
return {
20-
cancel: 'Peruuta', // For date picker
21-
22-
// formatTime and parseTime are needed so that time picker doesn't throw errors on init
23-
formatTime: formatISOTime,
24-
parseTime: parseISOTime,
25-
};
26-
},
27-
},
28-
};
29-
}
30-
},
31-
);
32-
33-
customElements.define(
34-
'dtp-i18n-slotted',
35-
class extends PolymerElement {
36-
static get template() {
37-
return html`
38-
<vaadin-date-time-picker id="dateTimePicker">
39-
<vaadin-date-picker slot="date-picker" i18n="[[dpI18n]]"></vaadin-date-picker>
40-
<vaadin-time-picker slot="time-picker" i18n="[[tpI18n]]"></vaadin-time-picker>
41-
</vaadin-date-time-picker>
42-
`;
43-
}
44-
45-
static get properties() {
46-
return {
47-
dpI18n: {
48-
type: Object,
49-
value: () => {
50-
return {
51-
cancel: 'Peruuta',
52-
};
53-
},
54-
},
55-
tpI18n: {
56-
type: Object,
57-
value: () => {
58-
return {
59-
formatTime: formatISOTime,
60-
parseTime: parseISOTime,
61-
};
62-
},
63-
},
64-
};
65-
}
66-
},
67-
);
684

695
['default', 'slotted'].forEach((set) => {
706
describe(`i18n property (${set})`, () => {
71-
let dateTimePicker;
72-
let datePicker;
7+
let dateTimePicker, datePicker;
738

74-
// No need for "beforeEach" to recreate the fixture before every test since these tests do not
75-
// modify the state but only check the initial state.
76-
before(async () => {
77-
const element = fixtureSync(`<dtp-i18n-${set}></dtp-i18n-${set}>`);
9+
const CUSTOM_I18N = { cancel: 'Peruuta' };
10+
11+
beforeEach(async () => {
12+
const i18nProp = JSON.stringify(CUSTOM_I18N);
13+
14+
if (set === 'default') {
15+
dateTimePicker = fixtureSync(`<vaadin-date-time-picker i18n='${i18nProp}'></vaadin-date-time-picker>`);
16+
} else {
17+
dateTimePicker = fixtureSync(`
18+
<vaadin-date-time-picker>
19+
<vaadin-date-picker slot="date-picker" i18n='${i18nProp}'></vaadin-date-picker>
20+
<vaadin-time-picker slot="time-picker"></vaadin-time-picker>
21+
</vaadin-date-time-picker>
22+
`);
23+
}
7824
await nextRender();
79-
dateTimePicker = element.$.dateTimePicker;
8025
datePicker = dateTimePicker.querySelector('[slot="date-picker"]');
8126
});
8227

8328
it('should have initial value for i18n', () => {
84-
expect(dateTimePicker.i18n).to.have.property('cancel', 'Peruuta');
85-
expect(datePicker.i18n).to.have.property('cancel', 'Peruuta');
29+
expect(dateTimePicker.i18n).to.have.property('cancel', CUSTOM_I18N.cancel);
30+
expect(datePicker.i18n).to.have.property('cancel', CUSTOM_I18N.cancel);
8631
});
8732
});
8833
});

0 commit comments

Comments
 (0)