UNPKG

@public-ui/components

Version:

Contains all web components that belong to KoliBri - The accessible HTML-Standard.

45 lines (44 loc) 2.86 kB
/*! * KoliBri - The accessible HTML-Standard */ import { h } from "@stencil/core"; import { renderFunctionalComponentToSpecPage } from "../../../../utils/testing"; import NativeOptionFc from "../NativeOption"; describe('NativeOptionFc', () => { it('should render and match snapshot', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { value: "testValue", label: "testLabel" })); expect(page.root).toMatchSnapshot(); }); it('should render an option tag with the correct index and label', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { value: "testValue", index: 1, label: "testLabel" })); expect(page.root).toMatchSnapshot(); const option = page.root; expect(option === null || option === void 0 ? void 0 : option.tagName).toBe('OPTION'); expect(option === null || option === void 0 ? void 0 : option.textContent).toBe('testLabel'); }); it('should set selected attribute correctly based on selectedValue', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { value: "testValue", label: "testLabel", selectedValue: "testValue" })); expect(page.root).toMatchSnapshot(); const option = page.root; expect(option === null || option === void 0 ? void 0 : option.hasAttribute('selected')).toBe(true); }); it('should set selected attribute correctly based on selectedValue (with index as value)', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { index: -1, value: "testValue", label: "testLabel", selectedValue: "testValue" })); expect(page.root).toMatchSnapshot(); const option = page.root; expect(option === null || option === void 0 ? void 0 : option.hasAttribute('selected')).toBe(true); }); it('should set selected attribute correctly based on selectedValue as number (with index as value)', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { index: -1, value: 5, label: "testLabel", selectedValue: 5 })); expect(page.root).toMatchSnapshot(); const option = page.root; expect(option === null || option === void 0 ? void 0 : option.hasAttribute('selected')).toBe(true); }); it('should set selected attribute correctly based on selected prop', async () => { const page = await renderFunctionalComponentToSpecPage(() => h(NativeOptionFc, { value: "testValue", label: "testLabel", selected: true })); expect(page.root).toMatchSnapshot(); const option = page.root; expect(option === null || option === void 0 ? void 0 : option.hasAttribute('selected')).toBe(true); }); }); //# sourceMappingURL=snapshot.test.js.map