diff --git a/core/src/components/segment/test/a11y/e2e.ts b/core/src/components/segment/test/a11y/e2e.ts
deleted file mode 100644
index feded996b0..0000000000
--- a/core/src/components/segment/test/a11y/e2e.ts
+++ /dev/null
@@ -1,63 +0,0 @@
-import { AxePuppeteer } from '@axe-core/puppeteer';
-import { newE2EPage } from '@stencil/core/testing';
-
-const getActiveElementText = async (page) => {
- const activeElement = await page.evaluateHandle(() => document.activeElement);
- return await page.evaluate((el) => el?.innerText, activeElement);
-};
-
-test('segment: axe', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/a11y?ionic:_testing=true',
- });
-
- const results = await new AxePuppeteer(page)
- // TODO(FW-403): Re-enable rule once segment button is updated to avoid nested-interactive
- .disableRules('nested-interactive')
- .analyze();
- expect(results.violations.length).toEqual(0);
-});
-
-test('segment: keyboard navigation', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/a11y?ionic:_testing=true',
- });
-
- await page.keyboard.press('Tab');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-
- await page.keyboard.press('ArrowRight');
- expect(await getActiveElementText(page)).toEqual('READING LIST');
-
- await page.keyboard.press('ArrowLeft');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-
- await page.keyboard.press('End');
- expect(await getActiveElementText(page)).toEqual('SHARED LINKS');
-
- await page.keyboard.press('Home');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-
- // Loop to the end from the start
- await page.keyboard.press('ArrowLeft');
- expect(await getActiveElementText(page)).toEqual('SHARED LINKS');
-
- // Loop to the start from the end
- await page.keyboard.press('ArrowRight');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-});
-
-test('segment: RTL keyboard navigation', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/a11y?ionic:_testing=true&rtl=true',
- });
-
- await page.keyboard.press('Tab');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-
- await page.keyboard.press('ArrowRight');
- expect(await getActiveElementText(page)).toEqual('SHARED LINKS');
-
- await page.keyboard.press('ArrowLeft');
- expect(await getActiveElementText(page)).toEqual('BOOKMARKS');
-});
diff --git a/core/src/components/segment/test/a11y/segment.e2e.ts b/core/src/components/segment/test/a11y/segment.e2e.ts
new file mode 100644
index 0000000000..085fd51490
--- /dev/null
+++ b/core/src/components/segment/test/a11y/segment.e2e.ts
@@ -0,0 +1,47 @@
+import AxeBuilder from '@axe-core/playwright';
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: a11y', () => {
+ test('should not have any axe violations', async ({ page }) => {
+ await page.goto('/src/components/segment/test/a11y');
+
+ // TODO(FW-403): Re-enable rule once segment button is updated to avoid nested-interactive
+ const results = await new AxeBuilder({ page }).disableRules('nested-interactive').analyze();
+ expect(results.violations).toEqual([]);
+ });
+
+ test('segment buttons should be keyboard navigable', async ({ page, browserName }, testInfo) => {
+ const tabKey = browserName === 'webkit' ? 'Alt+Tab' : 'Tab';
+ const isRTL = testInfo.project.metadata.rtl === true;
+ const nextKey = isRTL ? 'ArrowLeft' : 'ArrowRight';
+ const previousKey = isRTL ? 'ArrowRight' : 'ArrowLeft';
+
+ await page.goto('/src/components/segment/test/a11y');
+
+ const segmentButtons = page.locator('ion-segment-button');
+
+ await page.keyboard.press(tabKey);
+ await expect(segmentButtons.nth(0)).toBeFocused();
+
+ await page.keyboard.press(nextKey);
+ await expect(segmentButtons.nth(1)).toBeFocused();
+
+ await page.keyboard.press(previousKey);
+ await expect(segmentButtons.nth(0)).toBeFocused();
+
+ await page.keyboard.press('End');
+ await expect(segmentButtons.nth(2)).toBeFocused();
+
+ await page.keyboard.press('Home');
+ await expect(segmentButtons.nth(0)).toBeFocused();
+
+ // Loop to the end from the start
+ await page.keyboard.press(previousKey);
+ await expect(segmentButtons.nth(2)).toBeFocused();
+
+ // Loop to the start from the end
+ await page.keyboard.press(nextKey);
+ await expect(segmentButtons.nth(0)).toBeFocused();
+ });
+});
diff --git a/core/src/components/segment/test/basic/e2e.ts b/core/src/components/segment/test/basic/e2e.ts
deleted file mode 100644
index 8b69f26353..0000000000
--- a/core/src/components/segment/test/basic/e2e.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: basic', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/basic?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
-
-test('segment:rtl: basic', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/basic?ionic:_testing=true&rtl=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts b/core/src/components/segment/test/basic/segment.e2e.ts
new file mode 100644
index 0000000000..117706dea1
--- /dev/null
+++ b/core/src/components/segment/test/basic/segment.e2e.ts
@@ -0,0 +1,61 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: basic', () => {
+ test.describe('segment: rendering', () => {
+ test('should not have visual regressions when no value is selected', async ({ page }) => {
+ await page.setContent(`
+
+ First
+ Second
+ Third
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-no-value-${page.getSnapshotSettings()}.png`);
+ });
+ test('should not have visual regressions when a value is selected', async ({ page }) => {
+ await page.setContent(`
+
+ First
+ Second
+ Third
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-value-${page.getSnapshotSettings()}.png`);
+ });
+
+ test('should not have visual regressions when an item is disabled', async ({ page }) => {
+ await page.setContent(`
+
+ First
+ Second
+ Third
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-disabled-${page.getSnapshotSettings()}.png`);
+ });
+
+ test('should not have visual regressions with color', async ({ page }) => {
+ await page.setContent(`
+
+ First
+ Second
+ Third
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-color-${page.getSnapshotSettings()}.png`);
+ });
+ });
+});
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..e8910eda28
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..11030fd4ce
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..503b80c819
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..bb111a1da9
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..87ad090da9
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..5637f87679
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..0a8a5eb935
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..3fe3e3bc5b
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..d9cb66caf0
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..4254092135
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..dbb9d51c62
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..b916bdaff2
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-color-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..751a4cf621
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..63f62480fb
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..9cec44883c
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..b63a2f6400
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..203efe8fda
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..fd849ac57b
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..0d0db96025
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b598bb20bc
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..be2adc9c9a
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..e1f09e057e
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b28f356954
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..533e18411f
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-disabled-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..04395a2f96
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..aac8a64913
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..3106cf57c8
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..bf4e35467a
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..1119d7b509
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..c0a3e059dd
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..90b3adf81f
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..623c472064
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..a9c1b9ab60
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..50c3f29be3
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..d309c9a615
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8a277e7427
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-no-value-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..370f27b05a
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..0dac5e5803
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..002cbb1603
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..2496606a1d
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..92ce98ba1f
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..a83e8a93ab
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..c9b24c4605
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..7598573c26
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..979c4e58fa
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..95221f0b0b
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..9cd4bc4dc6
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..076951104b
Binary files /dev/null and b/core/src/components/segment/test/basic/segment.e2e.ts-snapshots/segment-value-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/colors/e2e.ts b/core/src/components/segment/test/colors/e2e.ts
deleted file mode 100644
index 344d52e77d..0000000000
--- a/core/src/components/segment/test/colors/e2e.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: colors', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/colors?ionic:_testing=true',
- });
-
- await page.waitForTimeout(250);
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
-
-test('segment:rtl: colors', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/colors?ionic:_testing=true&rtl=true',
- });
-
- await page.waitForTimeout(250);
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/colors/index.html b/core/src/components/segment/test/colors/index.html
deleted file mode 100644
index 2746b55ff6..0000000000
--- a/core/src/components/segment/test/colors/index.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-
-
-
- Segment - Colors
-
-
-
-
-
-
-
-
-
-
-
-
- Segment - Colors
-
-
-
-
-
-
- Paid
- Free
- Top
-
-
-
-
- Custom
- Colors
- All
-
-
-
- Bookmarks
- Reading List
- Shared Links
-
-
-
- Active
- Disabled
- Inactive
-
-
-
- All
- Missed
-
-
-
-
- 330ml
-
-
- 440ml
-
-
- 500ml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Bookmarks
-
-
- Reading List
-
-
- Shared Links
-
-
-
-
- Sunny
- Rainy
-
-
-
-
- Seg 1
-
-
- Seg 2
-
-
- Seg 3
-
-
-
-
-
- Seg 2 1
-
-
- Seg 2 2
-
-
- Seg 2 3
-
-
-
-
-
- Seg 2 1
-
-
- Seg 2 2
-
-
- Seg 2 3
-
-
-
-
-
- Seg 2 1
-
-
- Seg 2 2
-
-
- Seg 2 3
-
-
-
-
-
-
-
-
-
diff --git a/core/src/components/segment/test/custom/e2e.ts b/core/src/components/segment/test/custom/e2e.ts
deleted file mode 100644
index a91b268f90..0000000000
--- a/core/src/components/segment/test/custom/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: custom', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/custom?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts b/core/src/components/segment/test/custom/segment.e2e.ts
new file mode 100644
index 0000000000..d0f9c13fd0
--- /dev/null
+++ b/core/src/components/segment/test/custom/segment.e2e.ts
@@ -0,0 +1,14 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: custom', () => {
+ test('should not have visual regressions', async ({ page, skip }) => {
+ skip.rtl();
+
+ await page.goto('/src/components/segment/test/custom');
+
+ await page.setIonViewport();
+
+ expect(await page.screenshot()).toMatchSnapshot(`segment-custom-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..c9795e61fc
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..8eea7b8fc0
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..ee312874fd
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..16e6a72d5f
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..be923b069f
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..b5c753691c
Binary files /dev/null and b/core/src/components/segment/test/custom/segment.e2e.ts-snapshots/segment-custom-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts b/core/src/components/segment/test/icon/segment.e2e.ts
new file mode 100644
index 0000000000..2fafe98754
--- /dev/null
+++ b/core/src/components/segment/test/icon/segment.e2e.ts
@@ -0,0 +1,27 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: icons', () => {
+ test('should not have visual regressions', async ({ page }) => {
+ await page.setContent(`
+
+
+
+ Bookmarks
+
+
+
+ Reading List
+
+
+
+ Shared Links
+
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-icons-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..bd170b7789
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..5e6a4ecb5e
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..f93a6c4f5c
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..29d3d4d433
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..5646b39fbc
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8337d5eb18
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..1d7ec95e7c
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..39bd55b844
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..63d90fee15
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..1d3ccdaf45
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..bbf4722690
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..6adaa4f63f
Binary files /dev/null and b/core/src/components/segment/test/icon/segment.e2e.ts-snapshots/segment-icons-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/modes/e2e.ts b/core/src/components/segment/test/modes/e2e.ts
deleted file mode 100644
index 2accd571ce..0000000000
--- a/core/src/components/segment/test/modes/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: modes', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/modes?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/modes/index.html b/core/src/components/segment/test/modes/index.html
deleted file mode 100644
index 0f2454a72b..0000000000
--- a/core/src/components/segment/test/modes/index.html
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-
- Segment - Modes
-
-
-
-
-
-
-
-
-
-
-
-
- Segment - Modes
-
-
-
-
- Mode: segment & button ios
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
- Mode: segment ios
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
- Mode: segment ios, button: md
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
-
-
- Mode: segment & button md
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
- Mode: segment md
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
- Mode: segment md, button: ios
-
-
- Puppies
-
-
- Kittens
-
-
- Turtles
-
-
-
-
-
-
diff --git a/core/src/components/segment/test/modes/segment.e2e.ts b/core/src/components/segment/test/modes/segment.e2e.ts
new file mode 100644
index 0000000000..dbb68da0a2
--- /dev/null
+++ b/core/src/components/segment/test/modes/segment.e2e.ts
@@ -0,0 +1,40 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: modes', () => {
+ test('should allow overriding of modes to iOS', async ({ page, skip }) => {
+ skip.rtl();
+ skip.mode('ios', 'This tests that users can override the mode to iOS when the app is in MD mode');
+
+ await page.setContent(`
+
+
+ Puppies
+
+
+ `);
+
+ const segment = page.locator('ion-segment');
+ const segmentButtons = page.locator('ion-segment-button');
+ await expect(segment).toHaveClass(/ios/);
+ await expect(segmentButtons).toHaveClass(/ios/);
+ });
+
+ test('should allow overriding of modes to MD', async ({ page, skip }) => {
+ skip.rtl();
+ skip.mode('md', 'This tests that users can override the mode to MD when the app is in iOS mode');
+
+ await page.setContent(`
+
+
+ Puppies
+
+
+ `);
+
+ const segment = page.locator('ion-segment');
+ const segmentButtons = page.locator('ion-segment-button');
+ await expect(segment).toHaveClass(/md/);
+ await expect(segmentButtons).toHaveClass(/md/);
+ });
+});
diff --git a/core/src/components/segment/test/rtl/e2e.ts b/core/src/components/segment/test/rtl/e2e.ts
deleted file mode 100644
index b5f70a1e5b..0000000000
--- a/core/src/components/segment/test/rtl/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: rtl', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/rtl?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/rtl/index.html b/core/src/components/segment/test/rtl/index.html
deleted file mode 100644
index d18d963333..0000000000
--- a/core/src/components/segment/test/rtl/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
- Segment - RTL
-
-
-
-
-
-
-
-
-
-
-
-
- Segment - RTL
-
-
-
-
-
-
- Seg 1
-
-
- Seg 2
-
-
- Seg 3
-
-
-
-
-
-
-
-
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts b/core/src/components/segment/test/scrollable/segment.e2e.ts
new file mode 100644
index 0000000000..924bb5d9d1
--- /dev/null
+++ b/core/src/components/segment/test/scrollable/segment.e2e.ts
@@ -0,0 +1,24 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: scrollable', () => {
+ test('should not have visual regressions', async ({ page }) => {
+ await page.setContent(`
+
+ First
+ Second
+ Third
+ Fourth
+ Fifth
+ Sixth
+ Seventh
+ Eigth
+ Nineth
+
+ `);
+
+ const segment = page.locator('ion-segment');
+
+ expect(await segment.screenshot()).toMatchSnapshot(`segment-scrollable-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..ce6d7d93ec
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..31bfe165eb
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..2bb6f6f72d
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..46cb395a1f
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..b508faef93
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..ba6c720b3b
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..7306a9968b
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..0dfc70b949
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..f4747a7cc1
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..c06fbb275e
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..1a7220b834
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4c1e11ccf2
Binary files /dev/null and b/core/src/components/segment/test/scrollable/segment.e2e.ts-snapshots/segment-scrollable-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/spec/e2e.ts b/core/src/components/segment/test/spec/e2e.ts
deleted file mode 100644
index 86f3da8196..0000000000
--- a/core/src/components/segment/test/spec/e2e.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: spec', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/spec?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
-
-test('segment:rtl: spec', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/spec?ionic:_testing=true&rtl=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/spec/index.html b/core/src/components/segment/test/spec/index.html
deleted file mode 100644
index 4d358cb0c7..0000000000
--- a/core/src/components/segment/test/spec/index.html
+++ /dev/null
@@ -1,290 +0,0 @@
-
-
-
-
- Segment - Spec
-
-
-
-
-
-
-
-
-
-
-
-
- Segment - Spec
-
-
-
-
-
-
- Explore
-
-
-
- Flights
-
-
-
- Trips
-
-
-
-
-
-
-
-
-
- Item One
-
-
- Item Two
-
-
- Item Three
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- This is some long text
- Short text
- This is some long text
- Short text
- Short text
- Medium long text
- Medium long text
-
-
-
-
-
-
-
-
-
diff --git a/core/src/components/segment/test/standalone/e2e.ts b/core/src/components/segment/test/standalone/e2e.ts
deleted file mode 100644
index 43f4a19ad9..0000000000
--- a/core/src/components/segment/test/standalone/e2e.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: standalone', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/standalone?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/standalone/index.html b/core/src/components/segment/test/standalone/index.html
deleted file mode 100644
index dbce0b153d..0000000000
--- a/core/src/components/segment/test/standalone/index.html
+++ /dev/null
@@ -1,288 +0,0 @@
-
-
-
-
- Segment - Standalone
-
-
-
-
-
-
-
-
-
-
-
-
- Paid
-
-
- Free
-
-
- Top
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Bookmarks
-
-
- Reading List
-
-
- Shared Links
-
-
-
-
-
-
-
- Active
-
-
- Disabled
-
-
- Inactive
-
-
-
-
-
- Active
-
-
- Disabled
-
-
- Inactive
-
-
-
-
-
- Facebook
-
-
-
- Instagram
-
-
-
- Slack
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Home
-
-
-
- Call
-
-
-
- Person
-
-
-
-
-
-
-
-
diff --git a/core/src/components/segment/test/toolbar/e2e.ts b/core/src/components/segment/test/toolbar/e2e.ts
deleted file mode 100644
index f11b2d56b6..0000000000
--- a/core/src/components/segment/test/toolbar/e2e.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('segment: toolbar', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/toolbar?ionic:_testing=true',
- });
-
- await page.waitForTimeout(250);
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
-
-test('segment:rtl: toolbar', async () => {
- const page = await newE2EPage({
- url: '/src/components/segment/test/toolbar?ionic:_testing=true&rtl=true',
- });
-
- await page.waitForTimeout(250);
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/segment/test/toolbar/index.html b/core/src/components/segment/test/toolbar/index.html
deleted file mode 100644
index 34b8b4c57c..0000000000
--- a/core/src/components/segment/test/toolbar/index.html
+++ /dev/null
@@ -1,288 +0,0 @@
-
-
-
-
- Segment - Toolbar
-
-
-
-
-
-
-
-
-
-
-
-
- Segment - Toolbar
-
-
-
-
-
- Paid
-
-
- Free
-
-
- Top
-
-
-
-
-
-
-
- Paid
-
-
- Free
-
-
- Top
-
-
-
-
-
-
-
- Paid
-
-
- Free
-
-
- Top
-
-
-
-
-
-
-
- Paid
-
-
- Free
-
-
- Top
-
-
-
-
-
-
-
- Bookmarks
-
-
- Reading List
-
-
- Shared Links
-
-
-
-
-
-
-
- Active
-
-
- Disabled
-
-
- Inactive
-
-
-
-
-
-
-
- Sunny
-
-
- Rainy
-
-
-
-
-
-
- Sunny
- Rainy
-
-
-
-
-
-
-
- Item One
-
-
- Item Two
-
-
- Item Three
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
-
-
-
-
- Item One
-
-
-
- Item Two
-
-
-
- Item Three
-
-
-
-
-
- Segment in Toolbar
-
-
-
-
-
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts b/core/src/components/segment/test/toolbar/segment.e2e.ts
new file mode 100644
index 0000000000..917f54b587
--- /dev/null
+++ b/core/src/components/segment/test/toolbar/segment.e2e.ts
@@ -0,0 +1,42 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('segment: toolbar', () => {
+ test.describe('segment: rendering', () => {
+ test('should not have visual regressions when used in a toolbar without color', async ({ page }) => {
+ await page.setContent(`
+
+
+
+ First
+ Second
+ Third
+
+
+
+ `);
+
+ const header = page.locator('ion-header');
+
+ expect(await header.screenshot()).toMatchSnapshot(`segment-toolbar-${page.getSnapshotSettings()}.png`);
+ });
+
+ test('should not have visual regressions when used in a toolbar with color', async ({ page }) => {
+ await page.setContent(`
+
+
+
+ First
+ Second
+ Third
+
+
+
+ `);
+
+ const header = page.locator('ion-header');
+
+ expect(await header.screenshot()).toMatchSnapshot(`segment-toolbar-color-${page.getSnapshotSettings()}.png`);
+ });
+ });
+});
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..473f323a96
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..80c6b08818
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..86b28db3b4
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..44a847f356
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..1bd74fc3a4
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..beaccb7c2d
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..0499b006ad
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..2e9c1264ef
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..5fb319a510
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..ed13fdcfdf
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..c40a293c02
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..664edcedb8
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-color-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..39d914c116
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..5fd9425dd1
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..e95524f816
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..a0dfeded45
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..86130a86ca
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4d79e4a093
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..2772861776
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..ce1fafc9bc
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..077397d70a
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Chrome-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..4f2f68c7e0
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Firefox-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..78b108f692
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Safari-linux.png b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..376117e935
Binary files /dev/null and b/core/src/components/segment/test/toolbar/segment.e2e.ts-snapshots/segment-toolbar-md-rtl-Mobile-Safari-linux.png differ