q2-tecton-elements 1.45.0 → 1.45.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{index-c385e32f.js → index-0430339e.js} +1 -1
- package/dist/cjs/{index-c385e32f.js.map → index-0430339e.js.map} +1 -1
- package/dist/cjs/q2-calendar.cjs.entry.js +3 -2
- package/dist/cjs/q2-calendar.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-icon.cjs.entry.js +1 -1
- package/dist/cjs/q2-icon.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-message.cjs.entry.js +1 -1
- package/dist/cjs/q2-message.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-relative-time.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js.map +1 -1
- package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
- package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
- package/dist/collection/components/q2-calendar/q2-calendar.js +2 -1
- package/dist/collection/components/q2-calendar/q2-calendar.js.map +1 -1
- package/dist/collection/components/q2-data-table/q2-data-table.js +6 -6
- package/dist/collection/components/q2-icon/assets/status.symbol.svg +1 -1
- package/dist/collection/components/q2-icon/q2-icon.css +4 -4
- package/dist/collection/components/q2-input/q2-input.js +1 -1
- package/dist/collection/components/q2-message/q2-message.css +3 -3
- package/dist/collection/components/q2-option-list/q2-option-list.js +2 -2
- package/dist/collection/components/q2-stepper/q2-stepper.css +4 -2
- package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +2 -2
- package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.css +5 -16
- package/dist/components/q2-calendar.js +2 -1
- package/dist/components/q2-calendar.js.map +1 -1
- package/dist/components/q2-icon2.js +1 -1
- package/dist/components/q2-icon2.js.map +1 -1
- package/dist/components/q2-message2.js +1 -1
- package/dist/components/q2-message2.js.map +1 -1
- package/dist/components/q2-stepper-vertical.js +1 -1
- package/dist/components/q2-stepper-vertical.js.map +1 -1
- package/dist/components/q2-stepper.js +1 -1
- package/dist/components/q2-stepper.js.map +1 -1
- package/dist/esm/{index-f0dfb099.js → index-e940b40e.js} +1 -1
- package/dist/esm/{index-f0dfb099.js.map → index-e940b40e.js.map} +1 -1
- package/dist/esm/q2-calendar.entry.js +3 -2
- package/dist/esm/q2-calendar.entry.js.map +1 -1
- package/dist/esm/q2-icon.entry.js +1 -1
- package/dist/esm/q2-icon.entry.js.map +1 -1
- package/dist/esm/q2-message.entry.js +1 -1
- package/dist/esm/q2-message.entry.js.map +1 -1
- package/dist/esm/q2-relative-time.entry.js +1 -1
- package/dist/esm/q2-stepper-vertical.entry.js +1 -1
- package/dist/esm/q2-stepper-vertical.entry.js.map +1 -1
- package/dist/esm/q2-stepper.entry.js +1 -1
- package/dist/esm/q2-stepper.entry.js.map +1 -1
- package/dist/q2-tecton-elements/assets/status.symbol.svg +1 -1
- package/dist/q2-tecton-elements/p-445990a8.entry.js +2 -0
- package/dist/q2-tecton-elements/p-445990a8.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-3c42c90f.js → p-7ce6e587.js} +1 -1
- package/dist/q2-tecton-elements/p-a977e723.entry.js +2 -0
- package/dist/q2-tecton-elements/p-a977e723.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-8dc489e1.entry.js → p-b376c111.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-c016bd18.entry.js +2 -0
- package/dist/q2-tecton-elements/p-c016bd18.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-0d548810.entry.js → p-c4c458b7.entry.js} +2 -2
- package/dist/q2-tecton-elements/p-c4c458b7.entry.js.map +1 -0
- package/dist/q2-tecton-elements/{p-b21ed2d9.entry.js → p-f1281e3f.entry.js} +2 -2
- package/dist/q2-tecton-elements/{p-b21ed2d9.entry.js.map → p-f1281e3f.entry.js.map} +1 -1
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/test/elements/q2-action-sheet-test.e2e.js +5 -1
- package/dist/test/elements/q2-action-sheet-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-avatar-test.e2e.js +2 -3
- package/dist/test/elements/q2-avatar-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-badge-test.e2e.js +5 -1
- package/dist/test/elements/q2-badge-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-btn-test.e2e.js +5 -1
- package/dist/test/elements/q2-btn-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-calendar-test.e2e.js +40 -1
- package/dist/test/elements/q2-calendar-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-card-test.e2e.js +5 -1
- package/dist/test/elements/q2-card-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-chart-area-test.e2e.js +5 -1
- package/dist/test/elements/q2-chart-area-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-chart-bar-test.e2e.js +5 -1
- package/dist/test/elements/q2-chart-bar-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-chart-donut-test.e2e.js +5 -1
- package/dist/test/elements/q2-chart-donut-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-checkbox-group-test.e2e.js +5 -1
- package/dist/test/elements/q2-checkbox-group-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-checkbox-test.e2e.js +5 -1
- package/dist/test/elements/q2-checkbox-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-currency-test.e2e.js +5 -1
- package/dist/test/elements/q2-currency-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-data-table-test.e2e.js +5 -1
- package/dist/test/elements/q2-data-table-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-dropdown-item-test.e2e.js +5 -1
- package/dist/test/elements/q2-dropdown-item-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-dropdown-test.e2e.js +5 -1
- package/dist/test/elements/q2-dropdown-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-editable-field-test.e2e.js +5 -1
- package/dist/test/elements/q2-editable-field-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-icon-test.e2e.js +7 -3
- package/dist/test/elements/q2-icon-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-input-test.e2e.js +5 -1
- package/dist/test/elements/q2-input-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-loading-test.e2e.js +5 -1
- package/dist/test/elements/q2-loading-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-loc-test.e2e.js +5 -1
- package/dist/test/elements/q2-loc-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-message-test.e2e.js +5 -1
- package/dist/test/elements/q2-message-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-optgroup-test.e2e.js +5 -1
- package/dist/test/elements/q2-optgroup-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-option-list-test.e2e.js +5 -1
- package/dist/test/elements/q2-option-list-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-option-test.e2e.js +5 -1
- package/dist/test/elements/q2-option-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-pagination-test.e2e.js +5 -1
- package/dist/test/elements/q2-pagination-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-pill-test.e2e.js +2 -3
- package/dist/test/elements/q2-pill-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-popover-test.e2e.js +6 -2
- package/dist/test/elements/q2-popover-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-radio-group-test.e2e.js +5 -1
- package/dist/test/elements/q2-radio-group-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-radio-test.e2e.js +5 -1
- package/dist/test/elements/q2-radio-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-relative-time-test.e2e.js +8 -4
- package/dist/test/elements/q2-relative-time-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-section-test.e2e.js +5 -1
- package/dist/test/elements/q2-section-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-select-test.e2e.js +5 -1
- package/dist/test/elements/q2-select-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-stepper-pane-test.e2e.js +5 -1
- package/dist/test/elements/q2-stepper-pane-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-stepper-test.e2e.js +5 -1
- package/dist/test/elements/q2-stepper-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-stepper-vertical-test.e2e.js +5 -1
- package/dist/test/elements/q2-stepper-vertical-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-tab-container-test.e2e.js +5 -1
- package/dist/test/elements/q2-tab-container-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-tab-pane-test.e2e.js +5 -1
- package/dist/test/elements/q2-tab-pane-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-tag-test.e2e.js +2 -3
- package/dist/test/elements/q2-tag-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-textarea-test.e2e.js +5 -1
- package/dist/test/elements/q2-textarea-test.e2e.js.map +1 -1
- package/dist/test/elements/q2-tooltip-test.e2e.js +5 -1
- package/dist/test/elements/q2-tooltip-test.e2e.js.map +1 -1
- package/dist/test/elements/tecton-tab-pane-test.e2e.js +5 -1
- package/dist/test/elements/tecton-tab-pane-test.e2e.js.map +1 -1
- package/dist/test/helpers.js +1 -1
- package/dist/test/helpers.js.map +1 -1
- package/dist/types/workspace/workspace/{_Gitlab_tecton-production_master → tecton-production_release_1.45.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +1 -1
- package/package.json +3 -3
- package/dist/q2-tecton-elements/p-0d548810.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-4f7e2c8a.entry.js +0 -2
- package/dist/q2-tecton-elements/p-4f7e2c8a.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-bf125cdf.entry.js +0 -2
- package/dist/q2-tecton-elements/p-bf125cdf.entry.js.map +0 -1
- package/dist/q2-tecton-elements/p-f418967b.entry.js +0 -2
- package/dist/q2-tecton-elements/p-f418967b.entry.js.map +0 -1
- /package/dist/q2-tecton-elements/{p-3c42c90f.js.map → p-7ce6e587.js.map} +0 -0
- /package/dist/q2-tecton-elements/{p-8dc489e1.entry.js.map → p-b376c111.entry.js.map} +0 -0
- /package/dist/types/workspace/workspace/{_Gitlab_tecton-production_master → tecton-production_release_1.45.x}/packages/q2-tecton-elements/.stencil/test/elements/q2-detail/slot-component.d.ts +0 -0
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { setup, testDeprecatedAriaLabel } from "../helpers";
|
|
1
|
+
import { getListOfStyleCompilationIssues, setup, testDeprecatedAriaLabel } from "../helpers";
|
|
2
2
|
describe('q2-loading', () => {
|
|
3
|
+
it('properly compiles CSS vars and functions', async () => {
|
|
4
|
+
const page = await setup({ html: '<q2-loading></q2-loading>' });
|
|
5
|
+
expect(await getListOfStyleCompilationIssues(page, 'q2-loading')).toHaveLength(0);
|
|
6
|
+
});
|
|
3
7
|
it('renders the default loader', async function () {
|
|
4
8
|
const page = await setup({ html: `<q2-loading></q2-loading>` });
|
|
5
9
|
const spinner = await page.find('q2-loading >>> .q2-loading-animation');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"q2-loading-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-loading-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { setup, testDeprecatedAriaLabel } from '../helpers';\n\ndescribe('q2-loading', () => {\n it('renders the default loader', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading></q2-loading>` });\n const spinner = await page.find('q2-loading >>> .q2-loading-animation');\n\n expect(spinner).toHaveClass('half-circle-spinner');\n });\n\n it('handles the aria-label', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading></q2-loading>` });\n const q2Loading = await page.find('q2-loading');\n const spinner = await page.find('q2-loading >>> .q2-loading-animation');\n\n expect(spinner).toEqualAttribute('aria-label', 'tecton.element.loading.ariaLabel');\n\n q2Loading.setProperty('ariaLabel', 'foo');\n await page.waitForChanges();\n\n expect(spinner).toEqualAttribute('aria-label', 'foo');\n\n q2Loading.setProperty('type', 'skeleton');\n await page.waitForChanges();\n\n const skeleton = await page.find('q2-loading >>> .q2-loading-skeleton');\n expect(skeleton).toEqualAttribute('aria-label', 'foo');\n });\n\n it('pulls skeleton loaders from dictionary', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading type=\"skeleton\"></q2-loading>` });\n const q2Loading = await page.find('q2-loading');\n const skeleton = await page.find('q2-loading >>> .q2-loading-skeleton');\n let skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeleton).not.toBeNull();\n expect(skeletonShape).toBeNull();\n\n q2Loading.setProperty('shape', 'rectangle');\n await page.waitForChanges();\n\n skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).not.toBeNull();\n });\n\n describe('skeletons', () => {\n it('renders circle skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"circle\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('circle');\n\n const skeletonStyle = await page.$eval('q2-loading', (element: HTMLElement) => {\n const { width, height } = element.shadowRoot.querySelector<HTMLElement>('.skeleton-shape').style;\n return { width, height };\n });\n\n expect(skeletonStyle.height).toEqual('100%');\n expect(skeletonStyle.width).toEqual('100%');\n });\n\n it('renders rectangle skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"rectangle\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('rectangle');\n\n const skeletonStyle = await page.$eval('q2-loading', (element: HTMLElement) => {\n const { borderRadius, height } =\n element.shadowRoot.querySelector<HTMLDivElement>('.skeleton-shape').style;\n\n return {\n borderRadius,\n height,\n };\n });\n\n expect(skeletonStyle.borderRadius).toEqual('var(--tct-border-radius-1, 3px)');\n expect(skeletonStyle.height).toEqual('100%');\n });\n\n describe('table', () => {\n it('renders according to props', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\"></q2-loading>`,\n });\n\n const skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n const skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n const skeletonBodyFirstRow = skeletonBodyRows[0];\n const skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n const skeletonBorders = await page.findAll(\n 'q2-loading >>> .skeleton-table-body .skeleton-table-row-border'\n );\n\n expect(skeletonHeaderColumns).toHaveLength(5);\n expect(skeletonBodyRows).toHaveLength(5);\n expect(skeletonBodyColumns).toHaveLength(5);\n expect(skeletonBorders).toHaveLength(0);\n });\n\n it('renders with modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\" modifiers=\"headless\"></q2-loading>`,\n });\n\n const q2Loading = await page.find('q2-loading');\n let skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n let skeletonBorders = await page.findAll(\n 'q2-loading >>> .skeleton-table-body .skeleton-table-row-border'\n );\n\n expect(skeletonHeader).toBeNull();\n expect(skeletonBorders).toHaveLength(0);\n\n q2Loading.setProperty('modifiers', 'bordered');\n await page.waitForChanges();\n\n skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n skeletonBorders = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row-border');\n\n expect(skeletonHeader).not.toBeNull();\n expect(skeletonBorders).toHaveLength(5);\n\n q2Loading.setProperty('modifiers', 'bordered-headless');\n await page.waitForChanges();\n\n skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n skeletonBorders = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row-border');\n\n expect(skeletonHeader).toBeNull();\n expect(skeletonBorders).toHaveLength(5);\n });\n\n it('renders with counts', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\" counts=\"2\"></q2-loading>`,\n });\n\n const q2Loading = await page.find('q2-loading');\n let skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n let skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n let skeletonBodyFirstRow = skeletonBodyRows[0];\n let skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n\n expect(skeletonHeaderColumns).toHaveLength(2);\n expect(skeletonBodyRows).toHaveLength(5);\n expect(skeletonBodyColumns).toHaveLength(2);\n\n q2Loading.setProperty('counts', '4x10');\n await page.waitForChanges();\n\n skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n skeletonBodyFirstRow = skeletonBodyRows[0];\n skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n\n expect(skeletonHeaderColumns).toHaveLength(4);\n expect(skeletonBodyRows).toHaveLength(10);\n expect(skeletonBodyColumns).toHaveLength(4);\n\n q2Loading.setProperty('counts', 'x7'); // doesn't defaults cols in broken syntax\n await page.waitForChanges();\n\n skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n expect(skeletonHeaderColumns).toHaveLength(0);\n expect(skeletonBodyRows).toHaveLength(7);\n });\n });\n\n it('renders field skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"field\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('field');\n\n const atoms = await page.findAll('q2-loading >>> .rectangle');\n\n expect(atoms).toHaveLength(2);\n });\n\n it('renders form skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"form\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClasses(['form', 'columns-1']);\n expect(fields).toHaveLength(1);\n\n const q2Loading = await page.find('q2-loading');\n\n q2Loading.setProperty('counts', '5');\n await page.waitForChanges();\n fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClass('columns-1');\n expect(fields).toHaveLength(5);\n\n q2Loading.setProperty('counts', '2x5');\n await page.waitForChanges();\n fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClass('columns-2');\n expect(fields).toHaveLength(10);\n });\n\n describe('text skeleton', () => {\n it('renders according to props', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"text\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n const header = await page.find('q2-loading >>> .header');\n let textElements = await page.findAll('q2-loading >>> .text .rectangle:not(.header)');\n\n expect(skeletonShape).toHaveClass('text');\n expect(header).toBeNull();\n expect(textElements).toHaveLength(1);\n\n const q2Loading = await page.find('q2-loading');\n\n q2Loading.setProperty('counts', '5');\n await page.waitForChanges();\n textElements = await page.findAll('q2-loading >>> .text .rectangle:not(.header)');\n expect(textElements).toHaveLength(5);\n });\n\n it('renders with modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"text\" modifiers=\"header\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n const header = await page.find('q2-loading >>> .header');\n\n expect(skeletonShape).toHaveClass('text');\n expect(header).not.toBeNull();\n expect(header).toHaveClass('left');\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'header-center-smallheader');\n await page.waitForChanges();\n\n expect(header).toHaveClasses(['center', 'smaller']);\n\n q2Loading.setProperty('modifiers', 'header-center-right-left');\n await page.waitForChanges();\n\n expect(header).toHaveClass('center');\n expect(header).not.toHaveClasses(['left', 'right']); // center takes priority\n\n q2Loading.setProperty('modifiers', 'header-right-left');\n await page.waitForChanges();\n\n expect(header).toHaveClass('right');\n expect(header).not.toHaveClass('left'); // right takes priority\n });\n });\n\n /* Detailed item */\n describe('detailed-item skeleton', () => {\n it('renders with top-level modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"detailed-item\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let detailedItemImage = await page.find('q2-loading >>> .detailed-item-image .skeleton-shape');\n\n expect(skeletonShape).toHaveClasses(['detailed-item', 'left']);\n expect(detailedItemImage).toHaveClass('circle');\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'center');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('center');\n\n q2Loading.setProperty('modifiers', 'center-right-left');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('center');\n expect(skeletonShape).not.toHaveClasses(['left', 'right']); // center takes priority\n\n q2Loading.setProperty('modifiers', 'right-left');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('right');\n expect(skeletonShape).not.toHaveClass('left'); // right takes priority\n\n q2Loading.setProperty('modifiers', 'square');\n await page.waitForChanges();\n detailedItemImage = await page.find('q2-loading >>> .detailed-item-image .skeleton-shape');\n\n expect(detailedItemImage).toHaveClass('rectangle');\n expect(skeletonShape).not.toHaveClass('circle');\n });\n\n it('passes counts and modifiers to text element', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"detailed-item\" modifiers=\"header-center\" counts=\"6\"></q2-loading>`,\n });\n const textShape = await page.find('q2-loading >>> .skeleton-shape.text');\n let textHeader = await textShape.find('.header');\n let textElements = await textShape.findAll('.rectangle:not(.header)');\n\n expect(textHeader).not.toBeNull();\n expect(textHeader).toHaveClass('center');\n expect(textElements).toHaveLength(6);\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'right');\n q2Loading.setProperty('counts', '2');\n await page.waitForChanges();\n\n textHeader = await textShape.find('.header');\n textElements = await textShape.findAll('.rectangle:not(.header)');\n\n expect(textHeader).toBeNull();\n expect(textElements).toHaveLength(2);\n });\n });\n\n it('renders label skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"label-value\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let rectangles = await page.findAll('q2-loading >>> .rectangle');\n\n expect(skeletonShape).toHaveClass('label-value');\n expect(rectangles).toHaveLength(2); // defaults to one row if no counts provided\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('counts', '6');\n await page.waitForChanges();\n\n rectangles = await page.findAll('q2-loading >>> .rectangle');\n expect(rectangles).toHaveLength(12);\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n const page = await setup({ html: `<q2-loading aria-label=\"${label}\" />` });\n await page.waitForChanges();\n await testDeprecatedAriaLabel(await page.find('q2-loading'), label);\n expect(await page.find('q2-loading >>> .q2-loading-animation')).toEqualAttribute('aria-label', label);\n });\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"q2-loading-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-loading-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { getListOfStyleCompilationIssues, setup, testDeprecatedAriaLabel } from '../helpers';\n\ndescribe('q2-loading', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-loading></q2-loading>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-loading')).toHaveLength(0);\n });\n\n it('renders the default loader', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading></q2-loading>` });\n const spinner = await page.find('q2-loading >>> .q2-loading-animation');\n\n expect(spinner).toHaveClass('half-circle-spinner');\n });\n\n it('handles the aria-label', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading></q2-loading>` });\n const q2Loading = await page.find('q2-loading');\n const spinner = await page.find('q2-loading >>> .q2-loading-animation');\n\n expect(spinner).toEqualAttribute('aria-label', 'tecton.element.loading.ariaLabel');\n\n q2Loading.setProperty('ariaLabel', 'foo');\n await page.waitForChanges();\n\n expect(spinner).toEqualAttribute('aria-label', 'foo');\n\n q2Loading.setProperty('type', 'skeleton');\n await page.waitForChanges();\n\n const skeleton = await page.find('q2-loading >>> .q2-loading-skeleton');\n expect(skeleton).toEqualAttribute('aria-label', 'foo');\n });\n\n it('pulls skeleton loaders from dictionary', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loading type=\"skeleton\"></q2-loading>` });\n const q2Loading = await page.find('q2-loading');\n const skeleton = await page.find('q2-loading >>> .q2-loading-skeleton');\n let skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeleton).not.toBeNull();\n expect(skeletonShape).toBeNull();\n\n q2Loading.setProperty('shape', 'rectangle');\n await page.waitForChanges();\n\n skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).not.toBeNull();\n });\n\n describe('skeletons', () => {\n it('renders circle skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"circle\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('circle');\n\n const skeletonStyle = await page.$eval('q2-loading', (element: HTMLElement) => {\n const { width, height } = element.shadowRoot.querySelector<HTMLElement>('.skeleton-shape').style;\n return { width, height };\n });\n\n expect(skeletonStyle.height).toEqual('100%');\n expect(skeletonStyle.width).toEqual('100%');\n });\n\n it('renders rectangle skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"rectangle\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('rectangle');\n\n const skeletonStyle = await page.$eval('q2-loading', (element: HTMLElement) => {\n const { borderRadius, height } =\n element.shadowRoot.querySelector<HTMLDivElement>('.skeleton-shape').style;\n\n return {\n borderRadius,\n height,\n };\n });\n\n expect(skeletonStyle.borderRadius).toEqual('var(--tct-border-radius-1, 3px)');\n expect(skeletonStyle.height).toEqual('100%');\n });\n\n describe('table', () => {\n it('renders according to props', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\"></q2-loading>`,\n });\n\n const skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n const skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n const skeletonBodyFirstRow = skeletonBodyRows[0];\n const skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n const skeletonBorders = await page.findAll(\n 'q2-loading >>> .skeleton-table-body .skeleton-table-row-border'\n );\n\n expect(skeletonHeaderColumns).toHaveLength(5);\n expect(skeletonBodyRows).toHaveLength(5);\n expect(skeletonBodyColumns).toHaveLength(5);\n expect(skeletonBorders).toHaveLength(0);\n });\n\n it('renders with modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\" modifiers=\"headless\"></q2-loading>`,\n });\n\n const q2Loading = await page.find('q2-loading');\n let skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n let skeletonBorders = await page.findAll(\n 'q2-loading >>> .skeleton-table-body .skeleton-table-row-border'\n );\n\n expect(skeletonHeader).toBeNull();\n expect(skeletonBorders).toHaveLength(0);\n\n q2Loading.setProperty('modifiers', 'bordered');\n await page.waitForChanges();\n\n skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n skeletonBorders = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row-border');\n\n expect(skeletonHeader).not.toBeNull();\n expect(skeletonBorders).toHaveLength(5);\n\n q2Loading.setProperty('modifiers', 'bordered-headless');\n await page.waitForChanges();\n\n skeletonHeader = await page.find('q2-loading >>> .skeleton-table-header');\n skeletonBorders = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row-border');\n\n expect(skeletonHeader).toBeNull();\n expect(skeletonBorders).toHaveLength(5);\n });\n\n it('renders with counts', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"table\" counts=\"2\"></q2-loading>`,\n });\n\n const q2Loading = await page.find('q2-loading');\n let skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n let skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n let skeletonBodyFirstRow = skeletonBodyRows[0];\n let skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n\n expect(skeletonHeaderColumns).toHaveLength(2);\n expect(skeletonBodyRows).toHaveLength(5);\n expect(skeletonBodyColumns).toHaveLength(2);\n\n q2Loading.setProperty('counts', '4x10');\n await page.waitForChanges();\n\n skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n skeletonBodyFirstRow = skeletonBodyRows[0];\n skeletonBodyColumns = await skeletonBodyFirstRow.findAll('.rectangle');\n\n expect(skeletonHeaderColumns).toHaveLength(4);\n expect(skeletonBodyRows).toHaveLength(10);\n expect(skeletonBodyColumns).toHaveLength(4);\n\n q2Loading.setProperty('counts', 'x7'); // doesn't defaults cols in broken syntax\n await page.waitForChanges();\n\n skeletonHeaderColumns = await page.findAll('q2-loading >>> .skeleton-table-header .rectangle');\n skeletonBodyRows = await page.findAll('q2-loading >>> .skeleton-table-body .skeleton-table-row');\n expect(skeletonHeaderColumns).toHaveLength(0);\n expect(skeletonBodyRows).toHaveLength(7);\n });\n });\n\n it('renders field skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"field\"></q2-loading>`,\n });\n\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n\n expect(skeletonShape).toHaveClass('field');\n\n const atoms = await page.findAll('q2-loading >>> .rectangle');\n\n expect(atoms).toHaveLength(2);\n });\n\n it('renders form skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"form\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClasses(['form', 'columns-1']);\n expect(fields).toHaveLength(1);\n\n const q2Loading = await page.find('q2-loading');\n\n q2Loading.setProperty('counts', '5');\n await page.waitForChanges();\n fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClass('columns-1');\n expect(fields).toHaveLength(5);\n\n q2Loading.setProperty('counts', '2x5');\n await page.waitForChanges();\n fields = await page.findAll('q2-loading >>> .field');\n\n expect(skeletonShape).toHaveClass('columns-2');\n expect(fields).toHaveLength(10);\n });\n\n describe('text skeleton', () => {\n it('renders according to props', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"text\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n const header = await page.find('q2-loading >>> .header');\n let textElements = await page.findAll('q2-loading >>> .text .rectangle:not(.header)');\n\n expect(skeletonShape).toHaveClass('text');\n expect(header).toBeNull();\n expect(textElements).toHaveLength(1);\n\n const q2Loading = await page.find('q2-loading');\n\n q2Loading.setProperty('counts', '5');\n await page.waitForChanges();\n textElements = await page.findAll('q2-loading >>> .text .rectangle:not(.header)');\n expect(textElements).toHaveLength(5);\n });\n\n it('renders with modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"text\" modifiers=\"header\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n const header = await page.find('q2-loading >>> .header');\n\n expect(skeletonShape).toHaveClass('text');\n expect(header).not.toBeNull();\n expect(header).toHaveClass('left');\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'header-center-smallheader');\n await page.waitForChanges();\n\n expect(header).toHaveClasses(['center', 'smaller']);\n\n q2Loading.setProperty('modifiers', 'header-center-right-left');\n await page.waitForChanges();\n\n expect(header).toHaveClass('center');\n expect(header).not.toHaveClasses(['left', 'right']); // center takes priority\n\n q2Loading.setProperty('modifiers', 'header-right-left');\n await page.waitForChanges();\n\n expect(header).toHaveClass('right');\n expect(header).not.toHaveClass('left'); // right takes priority\n });\n });\n\n /* Detailed item */\n describe('detailed-item skeleton', () => {\n it('renders with top-level modifiers', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"detailed-item\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let detailedItemImage = await page.find('q2-loading >>> .detailed-item-image .skeleton-shape');\n\n expect(skeletonShape).toHaveClasses(['detailed-item', 'left']);\n expect(detailedItemImage).toHaveClass('circle');\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'center');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('center');\n\n q2Loading.setProperty('modifiers', 'center-right-left');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('center');\n expect(skeletonShape).not.toHaveClasses(['left', 'right']); // center takes priority\n\n q2Loading.setProperty('modifiers', 'right-left');\n await page.waitForChanges();\n\n expect(skeletonShape).toHaveClass('right');\n expect(skeletonShape).not.toHaveClass('left'); // right takes priority\n\n q2Loading.setProperty('modifiers', 'square');\n await page.waitForChanges();\n detailedItemImage = await page.find('q2-loading >>> .detailed-item-image .skeleton-shape');\n\n expect(detailedItemImage).toHaveClass('rectangle');\n expect(skeletonShape).not.toHaveClass('circle');\n });\n\n it('passes counts and modifiers to text element', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"detailed-item\" modifiers=\"header-center\" counts=\"6\"></q2-loading>`,\n });\n const textShape = await page.find('q2-loading >>> .skeleton-shape.text');\n let textHeader = await textShape.find('.header');\n let textElements = await textShape.findAll('.rectangle:not(.header)');\n\n expect(textHeader).not.toBeNull();\n expect(textHeader).toHaveClass('center');\n expect(textElements).toHaveLength(6);\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('modifiers', 'right');\n q2Loading.setProperty('counts', '2');\n await page.waitForChanges();\n\n textHeader = await textShape.find('.header');\n textElements = await textShape.findAll('.rectangle:not(.header)');\n\n expect(textHeader).toBeNull();\n expect(textElements).toHaveLength(2);\n });\n });\n\n it('renders label skeleton', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-loading type=\"skeleton\" shape=\"label-value\"></q2-loading>`,\n });\n const skeletonShape = await page.find('q2-loading >>> .skeleton-shape');\n let rectangles = await page.findAll('q2-loading >>> .rectangle');\n\n expect(skeletonShape).toHaveClass('label-value');\n expect(rectangles).toHaveLength(2); // defaults to one row if no counts provided\n\n const q2Loading = await page.find('q2-loading');\n q2Loading.setProperty('counts', '6');\n await page.waitForChanges();\n\n rectangles = await page.findAll('q2-loading >>> .rectangle');\n expect(rectangles).toHaveLength(12);\n });\n });\n\n describe('Deprecations', () => {\n it('handles deprecated `ariaLabel` prop', async () => {\n const label = 'My Label';\n const page = await setup({ html: `<q2-loading aria-label=\"${label}\" />` });\n await page.waitForChanges();\n await testDeprecatedAriaLabel(await page.find('q2-loading'), label);\n expect(await page.find('q2-loading >>> .q2-loading-animation')).toEqualAttribute('aria-label', label);\n });\n });\n});\n"]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { setTestStrings, setup } from "../helpers";
|
|
1
|
+
import { getListOfStyleCompilationIssues, setTestStrings, setup } from "../helpers";
|
|
2
2
|
describe('q2-loc', () => {
|
|
3
|
+
it('properly compiles CSS vars and functions', async () => {
|
|
4
|
+
const page = await setup({ html: '<q2-loc></q2-loc>' });
|
|
5
|
+
expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);
|
|
6
|
+
});
|
|
3
7
|
it('localizes provided string and renders the text in its shadowDOM', async function () {
|
|
4
8
|
const page = await setup({ html: `<q2-loc></q2-loc>` });
|
|
5
9
|
await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"q2-loc-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-loc-test.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"q2-loc-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-loc-test.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEpF,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACpB,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,+BAA+B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK;QACvE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACxD,MAAM,cAAc,CAAC,IAAI,EAAE,EAAE,yBAAyB,EAAE,aAAa,EAAE,CAAC,CAAC;QAEzE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAExC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QAEtD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,wBAAwB;QACxB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAExC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAExD,0CAA0C;QAC1C,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oFAAoF,EAAE,KAAK;QAC1F,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC,CAAC;QACvE,MAAM,cAAc,CAAC,IAAI,EAAE;YACvB,uCAAuC,EAAE,8BAA8B;SAC1E,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,uCAAuC,CAAC,CAAC;QAEpE,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAyB,EAAE,EAAE;YACrD,OAAO,CAAC,aAAa,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,wBAAwB;QACxB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAExC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAExD,0CAA0C;QAC1C,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC","sourcesContent":["import { getListOfStyleCompilationIssues, setTestStrings, setup } from '../helpers';\n\ndescribe('q2-loc', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-loc></q2-loc>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-loc')).toHaveLength(0);\n });\n\n it('localizes provided string and renders the text in its shadowDOM', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loc></q2-loc>` });\n await setTestStrings(page, { 'tecton.element.loc.test': 'Test String' });\n\n const q2Loc = await page.find('q2-loc');\n\n q2Loc.setProperty('value', 'tecton.element.loc.test');\n\n await page.waitForChanges();\n\n // the component renders\n expect(q2Loc.tagName).toEqual('Q2-LOC');\n\n const innerContent = await page.find('q2-loc >>> span');\n\n // nested span renders with localized text\n expect(innerContent.innerText).toEqual('Test String');\n });\n\n it('localizes provided string with substitutions and renders the text in its shadowDOM', async function (): Promise<void> {\n const page = await setup({ html: `<q2-loc id=\"unique-id\"></q2-loc>` });\n await setTestStrings(page, {\n 'tecton.element.loc.test.substitutions': 'Test String with {0} and {1}',\n });\n\n const q2Loc = await page.find('q2-loc');\n q2Loc.setProperty('value', 'tecton.element.loc.test.substitutions');\n\n await page.$eval('q2-loc', (element: HTMLQ2LocElement) => {\n element.substitutions = ['Jane', 'Doe'];\n });\n\n await page.waitForChanges();\n\n // the component renders\n expect(q2Loc.tagName).toEqual('Q2-LOC');\n\n const innerContent = await page.find('q2-loc >>> span');\n\n // nested span renders with localized text\n expect(innerContent.innerText).toEqual('Test String with Jane and Doe');\n });\n});\n"]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { setTestStrings, setup, dispatchEvent } from "../helpers";
|
|
1
|
+
import { setTestStrings, setup, dispatchEvent, getListOfStyleCompilationIssues } from "../helpers";
|
|
2
2
|
describe('q2-message', () => {
|
|
3
|
+
it('properly compiles CSS vars and functions', async () => {
|
|
4
|
+
const page = await setup({ html: '<q2-message></q2-message>' });
|
|
5
|
+
expect(await getListOfStyleCompilationIssues(page, 'q2-message')).toHaveLength(0);
|
|
6
|
+
});
|
|
3
7
|
describe('@Props', () => {
|
|
4
8
|
describe('type', () => {
|
|
5
9
|
describe('when omitted', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"q2-message-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-message-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { setTestStrings, setup, dispatchEvent } from '../helpers';\n\ndescribe('q2-message', () => {\n describe('@Props', () => {\n describe('type', () => {\n describe('when omitted', () => {\n it('defaults to \"info\" type and icon', async () => {\n const page = await setup({\n html: '<q2-message></q2-message>',\n });\n const messageElement = await page.find('q2-message');\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageElement.getAttribute('type')).toEqual('info');\n expect(await messageIcon.getAttribute('type')).toEqual('info');\n });\n\n it('defaults to \"info\" message type label', async () => {\n const ariaLabel = 'q2-message aria-label';\n const page = await setup({ html: '' });\n await setTestStrings(page, {\n 'tecton.element.message.type.info': ariaLabel,\n });\n await page.setContent('<q2-message></q2-message>');\n await page.waitForChanges();\n const typeLabel = await page.find('q2-message >>> .sr.message-label');\n\n expect(typeLabel).toEqualText(ariaLabel);\n });\n });\n\n describe('when value is \"success\"', () => {\n it('renders with \"success\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"success\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('success');\n });\n\n it('renders with \"success\" message type label', async () => {\n await expectScreenReaderMessageLabel('success');\n });\n });\n\n describe('when value is \"warning\"', () => {\n it('renders with \"warning\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"warning\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('warning');\n });\n\n it('renders with \"warning\" message type label', async () => {\n await expectScreenReaderMessageLabel('warning');\n });\n });\n\n describe('when value is \"danger\"', () => {\n it('renders with \"error\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"danger\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('error');\n });\n\n it('renders with \"danger\" message type label', async () => {\n await expectScreenReaderMessageLabel('danger');\n });\n });\n\n describe('when value is \"error\"', () => {\n it('renders with \"error\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"error\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('error');\n });\n\n it('renders with \"error\" message type label', async () => {\n await expectScreenReaderMessageLabel('error');\n });\n });\n });\n\n describe('appearance', () => {\n describe('when value is \"minimal\"', () => {\n it('does not render icon', async () => {\n const page = await setup({\n html: '<q2-message appearance=\"minimal\">Hipster script</q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(messageIcon).toBeNull();\n });\n });\n\n describe('when omitted', () => {\n it('defaults to \"standard\" and renders icon', async () => {\n const page = await setup({\n html: '<q2-message>Hipster script</q2-message>',\n });\n const messageElement = await page.find('q2-message');\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageElement.getAttribute('appearance')).toEqual('standard');\n expect(messageIcon).toBeDefined();\n });\n });\n });\n\n describe('description', () => {\n describe('when provided', () => {\n it('does not add aria-attributes and role', async () => {\n const page = await setup({\n html: '<q2-message description>Tony Stark</q2-message>',\n });\n const messageBlock = await page.find('q2-message >>> .message');\n\n expect(await messageBlock.getAttribute('role')).toBeNull();\n expect(await messageBlock.getAttribute('aria-live')).toBeNull();\n expect(await messageBlock.getAttribute('aria-atomic')).toBeNull();\n });\n });\n\n describe('when omitted', () => {\n it('adds aria-attributes and role', async () => {\n const page = await setup({\n html: '<q2-message>Tony Stark</q2-message>',\n });\n const messageBlock = await page.find('q2-message >>> .message');\n\n expect(await messageBlock.getAttribute('role')).toEqual('alert');\n expect(await messageBlock.getAttribute('aria-live')).toEqual('assertive');\n expect(await messageBlock.getAttribute('aria-atomic')).toEqual('true');\n expect(await messageBlock.getAttribute('aria-relevant')).toEqual('all');\n });\n });\n });\n });\n\n describe('focus transferring', () => {\n const html = '<q2-message type=\"info\" appearance=\"standard\">Tony Stark</q2-message>';\n\n it('focuses when focus event dispatched ', async function (): Promise<void> {\n const page = await setup({ html });\n await dispatchEvent(page, ['q2-message'], 'focus');\n const containsClass = await page.$eval('q2-message', el => {\n return el.shadowRoot.activeElement.classList.contains('message');\n });\n expect(containsClass).toBe(true);\n });\n\n it('focuses when focus event method called ', async function (): Promise<void> {\n const page = await setup({ html });\n const message = await page.find('q2-message');\n await message.triggerEvent('focus');\n await page.waitForChanges();\n const containsClass = await page.$eval('q2-message', el => {\n return el.shadowRoot.activeElement.classList.contains('message');\n });\n expect(containsClass).toBe(true);\n });\n });\n});\n\nasync function expectScreenReaderMessageLabel(type: string): Promise<void> {\n const page = await setup({\n html: '<q2-message></q2-message>',\n });\n const screenReaderLabel = 'q2-message aria-label';\n await setTestStrings(page, {\n [`tecton.element.message.type.${type}`]: screenReaderLabel,\n });\n const messageElement = await page.find('q2-message');\n messageElement.setAttribute('type', type);\n await page.waitForChanges();\n const typeLabel = await page.find('q2-message >>> .sr.message-label');\n\n expect(typeLabel).toEqualText(screenReaderLabel);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"q2-message-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-message-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { setTestStrings, setup, dispatchEvent, getListOfStyleCompilationIssues } from '../helpers';\n\ndescribe('q2-message', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-message></q2-message>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-message')).toHaveLength(0);\n });\n\n describe('@Props', () => {\n describe('type', () => {\n describe('when omitted', () => {\n it('defaults to \"info\" type and icon', async () => {\n const page = await setup({\n html: '<q2-message></q2-message>',\n });\n const messageElement = await page.find('q2-message');\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageElement.getAttribute('type')).toEqual('info');\n expect(await messageIcon.getAttribute('type')).toEqual('info');\n });\n\n it('defaults to \"info\" message type label', async () => {\n const ariaLabel = 'q2-message aria-label';\n const page = await setup({ html: '' });\n await setTestStrings(page, {\n 'tecton.element.message.type.info': ariaLabel,\n });\n await page.setContent('<q2-message></q2-message>');\n await page.waitForChanges();\n const typeLabel = await page.find('q2-message >>> .sr.message-label');\n\n expect(typeLabel).toEqualText(ariaLabel);\n });\n });\n\n describe('when value is \"success\"', () => {\n it('renders with \"success\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"success\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('success');\n });\n\n it('renders with \"success\" message type label', async () => {\n await expectScreenReaderMessageLabel('success');\n });\n });\n\n describe('when value is \"warning\"', () => {\n it('renders with \"warning\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"warning\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('warning');\n });\n\n it('renders with \"warning\" message type label', async () => {\n await expectScreenReaderMessageLabel('warning');\n });\n });\n\n describe('when value is \"danger\"', () => {\n it('renders with \"error\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"danger\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('error');\n });\n\n it('renders with \"danger\" message type label', async () => {\n await expectScreenReaderMessageLabel('danger');\n });\n });\n\n describe('when value is \"error\"', () => {\n it('renders with \"error\" icon', async () => {\n const page = await setup({\n html: '<q2-message type=\"error\"></q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageIcon.getAttribute('type')).toEqual('error');\n });\n\n it('renders with \"error\" message type label', async () => {\n await expectScreenReaderMessageLabel('error');\n });\n });\n });\n\n describe('appearance', () => {\n describe('when value is \"minimal\"', () => {\n it('does not render icon', async () => {\n const page = await setup({\n html: '<q2-message appearance=\"minimal\">Hipster script</q2-message>',\n });\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(messageIcon).toBeNull();\n });\n });\n\n describe('when omitted', () => {\n it('defaults to \"standard\" and renders icon', async () => {\n const page = await setup({\n html: '<q2-message>Hipster script</q2-message>',\n });\n const messageElement = await page.find('q2-message');\n const messageIcon = await page.find('q2-message >>> .message-icon');\n\n expect(await messageElement.getAttribute('appearance')).toEqual('standard');\n expect(messageIcon).toBeDefined();\n });\n });\n });\n\n describe('description', () => {\n describe('when provided', () => {\n it('does not add aria-attributes and role', async () => {\n const page = await setup({\n html: '<q2-message description>Tony Stark</q2-message>',\n });\n const messageBlock = await page.find('q2-message >>> .message');\n\n expect(await messageBlock.getAttribute('role')).toBeNull();\n expect(await messageBlock.getAttribute('aria-live')).toBeNull();\n expect(await messageBlock.getAttribute('aria-atomic')).toBeNull();\n });\n });\n\n describe('when omitted', () => {\n it('adds aria-attributes and role', async () => {\n const page = await setup({\n html: '<q2-message>Tony Stark</q2-message>',\n });\n const messageBlock = await page.find('q2-message >>> .message');\n\n expect(await messageBlock.getAttribute('role')).toEqual('alert');\n expect(await messageBlock.getAttribute('aria-live')).toEqual('assertive');\n expect(await messageBlock.getAttribute('aria-atomic')).toEqual('true');\n expect(await messageBlock.getAttribute('aria-relevant')).toEqual('all');\n });\n });\n });\n });\n\n describe('focus transferring', () => {\n const html = '<q2-message type=\"info\" appearance=\"standard\">Tony Stark</q2-message>';\n\n it('focuses when focus event dispatched ', async function (): Promise<void> {\n const page = await setup({ html });\n await dispatchEvent(page, ['q2-message'], 'focus');\n const containsClass = await page.$eval('q2-message', el => {\n return el.shadowRoot.activeElement.classList.contains('message');\n });\n expect(containsClass).toBe(true);\n });\n\n it('focuses when focus event method called ', async function (): Promise<void> {\n const page = await setup({ html });\n const message = await page.find('q2-message');\n await message.triggerEvent('focus');\n await page.waitForChanges();\n const containsClass = await page.$eval('q2-message', el => {\n return el.shadowRoot.activeElement.classList.contains('message');\n });\n expect(containsClass).toBe(true);\n });\n });\n});\n\nasync function expectScreenReaderMessageLabel(type: string): Promise<void> {\n const page = await setup({\n html: '<q2-message></q2-message>',\n });\n const screenReaderLabel = 'q2-message aria-label';\n await setTestStrings(page, {\n [`tecton.element.message.type.${type}`]: screenReaderLabel,\n });\n const messageElement = await page.find('q2-message');\n messageElement.setAttribute('type', type);\n await page.waitForChanges();\n const typeLabel = await page.find('q2-message >>> .sr.message-label');\n\n expect(typeLabel).toEqualText(screenReaderLabel);\n}\n"]}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { setTestStrings, setup } from "../helpers";
|
|
1
|
+
import { getListOfStyleCompilationIssues, setTestStrings, setup } from "../helpers";
|
|
2
2
|
describe('q2-select', () => {
|
|
3
|
+
it('properly compiles CSS vars and functions', async () => {
|
|
4
|
+
const page = await setup({ html: '<q2-select></q2-select>' });
|
|
5
|
+
expect(await getListOfStyleCompilationIssues(page, 'q2-select')).toHaveLength(0);
|
|
6
|
+
});
|
|
3
7
|
it('renders base state', async function () {
|
|
4
8
|
const page = await setup({
|
|
5
9
|
html: `<q2-optgroup label="Option Group" >
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"q2-optgroup-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-optgroup-test.e2e.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"q2-optgroup-test.e2e.js","sourceRoot":"","sources":["../../../test/elements/q2-optgroup-test.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { getListOfStyleCompilationIssues, setTestStrings, setup } from '../helpers';\n\ndescribe('q2-select', () => {\n it('properly compiles CSS vars and functions', async () => {\n const page = await setup({ html: '<q2-select></q2-select>' });\n expect(await getListOfStyleCompilationIssues(page, 'q2-select')).toHaveLength(0);\n });\n\n it('renders base state', async function (): Promise<void> {\n const page = await setup({\n html: `<q2-optgroup label=\"Option Group\" >\n <q2-option value=\"option1\" display=\"Option Text\">Option Text</q2-option>\n </q2-optgroup>\n `,\n });\n\n const optGroup = await page.find('q2-optgroup');\n\n // the component renders\n expect(optGroup.tagName).toEqual('Q2-OPTGROUP');\n\n const optGroupLabel = await page.find('q2-optgroup >>> .q2-optgroup-header');\n // label text is rendered in header\n expect(optGroupLabel.textContent).toEqual('Option Group');\n\n const optGroupContainer = await page.find('q2-optgroup >>> .q2-optgroup-container');\n\n // label header id matches container aria-labelledby\n expect(optGroupLabel.id).toEqual(optGroupContainer.getAttribute('aria-labelledby'));\n\n const assignedNodesLocalName = await page.$eval('q2-optgroup', group => {\n return group.shadowRoot.querySelector('slot').assignedElements()[0].localName;\n });\n\n // slot renders with provided options\n expect(assignedNodesLocalName).toEqual('q2-option');\n });\n\n it('propagates disabled state to child options', async function () {\n const page = await setup({\n html: `<q2-optgroup label=\"Option Group\" disabled>\n <q2-option value=\"option1\" display=\"Option Text\">Option Text</q2-option>\n </q2-optgroup>\n `,\n });\n\n const option = await page.find('q2-option');\n const optionDisabledByGroup = await option.getProperty('disabledGroup');\n\n expect(optionDisabledByGroup).toEqual(true);\n });\n\n it('hides the container if all children are hidden', async function () {\n const page = await setup({\n html: `<q2-optgroup label=\"Option Group\" >\n <q2-option value=\"option1\" display=\"Option Text\" hidden>Option Text</q2-option>\n </q2-optgroup>\n `,\n });\n\n const optGroupContainer = await page.find('q2-optgroup >>> .q2-optgroup-container');\n let containerHidden = await optGroupContainer.getProperty('hidden');\n\n // container hidden if all options hidden\n expect(containerHidden).toEqual(true);\n\n const option = await page.find('q2-option');\n\n await option.setProperty('hidden', false);\n\n await page.waitForChanges();\n\n // container no longer hidden once option isn't hidden\n // tests mutation observer fires\n containerHidden = await optGroupContainer.getProperty('hidden');\n expect(containerHidden).toEqual(false);\n });\n\n it('localizes label string', async function () {\n const page = await setup({\n html: `<q2-optgroup >\n <q2-option value=\"option1\" display=\"Option Text\" hidden>Option Text</q2-option>\n </q2-optgroup>\n `,\n });\n\n await setTestStrings(page, {\n 'q2-optGroup.label': 'My Option Group Label',\n });\n\n const optGroup = await page.find('q2-optgroup');\n await optGroup.setProperty('label', 'q2-optGroup.label');\n\n await page.waitForChanges();\n\n const optGroupLabel = await page.find('q2-optgroup >>> .q2-optgroup-header');\n\n expect(optGroupLabel.textContent).toEqual('My Option Group Label');\n });\n});\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getFocusedOptionValue, setup } from "../helpers";
|
|
1
|
+
import { getFocusedOptionValue, getListOfStyleCompilationIssues, setup } from "../helpers";
|
|
2
2
|
describe('q2-option-list', () => {
|
|
3
3
|
let page;
|
|
4
4
|
let optionList;
|
|
@@ -18,6 +18,10 @@ describe('q2-option-list', () => {
|
|
|
18
18
|
async function setDefaultActiveElement(page) {
|
|
19
19
|
return page.$eval('q2-option-list', (el) => el.setDefaultActiveElement());
|
|
20
20
|
}
|
|
21
|
+
it('properly compiles CSS vars and functions', async () => {
|
|
22
|
+
const page = await setup({ html: '<q2-option-list></q2-option-list>' });
|
|
23
|
+
expect(await getListOfStyleCompilationIssues(page, 'q2-option-list')).toHaveLength(0);
|
|
24
|
+
});
|
|
21
25
|
describe('Selecting options', () => {
|
|
22
26
|
it('emits change event and selects option', async function () {
|
|
23
27
|
page = await setup({
|