Skip to content

Commit 5c53634

Browse files
authored
test: make sure all components can be created with document.createEle… (#34977)
1 parent 3427e1d commit 5c53634

File tree

37 files changed

+593
-0
lines changed

37 files changed

+593
-0
lines changed

packages/web-components/src/accordion-item/accordion-item.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,22 @@ test.describe('Accordion item', () => {
99
waitFor: ['fluent-accordion-item'],
1010
});
1111

12+
test('should create with document.createElement()', async ({ page, fastPage }) => {
13+
await fastPage.setTemplate();
14+
15+
let hasError = false;
16+
17+
page.on('pageerror', () => {
18+
hasError = true;
19+
});
20+
21+
await page.evaluate(() => {
22+
document.createElement('fluent-accordion-item');
23+
});
24+
25+
expect(hasError).toBe(false);
26+
});
27+
1228
test('should set a default heading level of 2 when `headinglevel` is not provided', async ({ fastPage }) => {
1329
const { element } = fastPage;
1430

packages/web-components/src/accordion/accordion.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@ test.describe('Accordion', () => {
66
tagName: 'fluent-accordion',
77
});
88

9+
test('should create with document.createElement()', async ({ page, fastPage }) => {
10+
await fastPage.setTemplate();
11+
12+
let hasError = false;
13+
14+
page.on('pageerror', () => {
15+
hasError = true;
16+
});
17+
18+
await page.evaluate(() => {
19+
document.createElement('fluent-accordion');
20+
});
21+
22+
expect(hasError).toBe(false);
23+
});
24+
925
test('should set an expand mode of `multi` when passed to the `expand-mode` attribute', async ({ fastPage }) => {
1026
const { element } = fastPage;
1127

packages/web-components/src/anchor-button/anchor-button.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,22 @@ test.describe('Anchor Button', () => {
77
tagName: 'fluent-anchor-button',
88
});
99

10+
test('should create with document.createElement()', async ({ page, fastPage }) => {
11+
await fastPage.setTemplate();
12+
13+
let hasError = false;
14+
15+
page.on('pageerror', () => {
16+
hasError = true;
17+
});
18+
19+
await page.evaluate(() => {
20+
document.createElement('fluent-anchor-button');
21+
});
22+
23+
expect(hasError).toBe(false);
24+
});
25+
1026
test('should set the `href` property to match the `href` attribute', async ({ fastPage }) => {
1127
const { element } = fastPage;
1228

packages/web-components/src/avatar/avatar.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@ test.describe('Avatar', () => {
66
tagName: 'fluent-avatar',
77
});
88

9+
test('should create with document.createElement()', async ({ page, fastPage }) => {
10+
await fastPage.setTemplate();
11+
12+
let hasError = false;
13+
14+
page.on('pageerror', () => {
15+
hasError = true;
16+
});
17+
18+
await page.evaluate(() => {
19+
document.createElement('fluent-avatar');
20+
});
21+
22+
expect(hasError).toBe(false);
23+
});
24+
925
test('should have a `role` of `img`', async ({ fastPage }) => {
1026
const { element } = fastPage;
1127

packages/web-components/src/badge/badge.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,22 @@ test.describe('Badge', () => {
77
innerHTML: 'Badge',
88
});
99

10+
test('should create with document.createElement()', async ({ page, fastPage }) => {
11+
await fastPage.setTemplate();
12+
13+
let hasError = false;
14+
15+
page.on('pageerror', () => {
16+
hasError = true;
17+
});
18+
19+
await page.evaluate(() => {
20+
document.createElement('fluent-badge');
21+
});
22+
23+
expect(hasError).toBe(false);
24+
});
25+
1026
test('should set default attribute values', async ({ fastPage }) => {
1127
const { element } = fastPage;
1228

packages/web-components/src/button/button.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,22 @@ test.describe('Button', () => {
66
innerHTML: 'Button',
77
});
88

9+
test('should create with document.createElement()', async ({ page, fastPage }) => {
10+
await fastPage.setTemplate();
11+
12+
let hasError = false;
13+
14+
page.on('pageerror', () => {
15+
hasError = true;
16+
});
17+
18+
await page.evaluate(() => {
19+
document.createElement('fluent-button');
20+
});
21+
22+
expect(hasError).toBe(false);
23+
});
24+
925
test('should NOT submit the parent form when clicked and `type` attribute is not set', async ({ fastPage, page }) => {
1026
const { element } = fastPage;
1127

packages/web-components/src/checkbox/checkbox.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,22 @@ test.describe('Checkbox', () => {
88
waitFor: ['fluent-button'],
99
});
1010

11+
test('should create with document.createElement()', async ({ page, fastPage }) => {
12+
await fastPage.setTemplate();
13+
14+
let hasError = false;
15+
16+
page.on('pageerror', () => {
17+
hasError = true;
18+
});
19+
20+
await page.evaluate(() => {
21+
document.createElement('fluent-checkbox');
22+
});
23+
24+
expect(hasError).toBe(false);
25+
});
26+
1127
test('should have a role of `checkbox`', async ({ fastPage }) => {
1228
await expect(fastPage.element).toHaveJSProperty('elementInternals.role', 'checkbox');
1329
});

packages/web-components/src/counter-badge/counter-badge.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,22 @@ test.describe('CounterBadge component', () => {
1212
tagName: 'fluent-counter-badge',
1313
});
1414

15+
test('should create with document.createElement()', async ({ page, fastPage }) => {
16+
await fastPage.setTemplate();
17+
18+
let hasError = false;
19+
20+
page.on('pageerror', () => {
21+
hasError = true;
22+
});
23+
24+
await page.evaluate(() => {
25+
document.createElement('fluent-counter-badge');
26+
});
27+
28+
expect(hasError).toBe(false);
29+
});
30+
1531
test('should display the count when then the `count` attribute is equal to the `overflow-count` attribute', async ({
1632
fastPage,
1733
}) => {

packages/web-components/src/dialog/dialog.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,22 @@ test.describe('Dialog', () => {
2020
};
2121
}
2222

23+
test('should create with document.createElement()', async ({ page, fastPage }) => {
24+
await fastPage.setTemplate();
25+
26+
let hasError = false;
27+
28+
page.on('pageerror', () => {
29+
hasError = true;
30+
});
31+
32+
await page.evaluate(() => {
33+
document.createElement('fluent-dialog');
34+
});
35+
36+
expect(hasError).toBe(false);
37+
});
38+
2339
test('should open and close programmatically', async ({ fastPage }) => {
2440
const { element } = fastPage;
2541
const content = element.locator('#content');

packages/web-components/src/divider/divider.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,22 @@ import { DividerAlignContent, DividerAppearance, DividerOrientation, DividerRole
55
test.describe('Divider', () => {
66
test.use({ tagName: 'fluent-divider' });
77

8+
test('should create with document.createElement()', async ({ page, fastPage }) => {
9+
await fastPage.setTemplate();
10+
11+
let hasError = false;
12+
13+
page.on('pageerror', () => {
14+
hasError = true;
15+
});
16+
17+
await page.evaluate(() => {
18+
document.createElement('fluent-divider');
19+
});
20+
21+
expect(hasError).toBe(false);
22+
});
23+
824
test('should set a default `role` attribute of "separator"', async ({ fastPage }) => {
925
const { element } = fastPage;
1026

0 commit comments

Comments
 (0)