diff --git a/src/lib/components/disclosure/disclosure.test.ts b/src/lib/components/disclosure/disclosure.test.ts
index 70ee59c..7485d46 100644
--- a/src/lib/components/disclosure/disclosure.test.ts
+++ b/src/lib/components/disclosure/disclosure.test.ts
@@ -1,7 +1,6 @@
import { Disclosure, DisclosureButton, DisclosurePanel } from ".";
import { suppressConsoleLogs } from "$lib/test-utils/suppress-console-logs";
import { render } from "@testing-library/svelte";
-import TestRenderer from "$lib/test-utils/TestRenderer.svelte";
import {
assertActiveElement,
assertDisclosureButton,
@@ -52,16 +51,12 @@ describe("Safe guards", () => {
it(
"should be possible to render a Disclosure without crashing",
suppressConsoleLogs(async () => {
- render(TestRenderer, {
- allProps: [
- Disclosure,
- {},
- [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ],
- ],
- });
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `);
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -248,43 +243,31 @@ describe("Rendering", () => {
describe('`type` attribute', () => {
it('should set the `type` to "button" by default', async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {},
- [
- [DisclosureButton, {}, "Trigger"]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+
+ `)
expect(getDisclosureButton()).toHaveAttribute('type', 'button')
})
it('should not set the `type` to "button" if it already contains a `type`', async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {},
- [
- [DisclosureButton, { type: "submit" }, "Trigger"]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+
+ `)
expect(getDisclosureButton()).toHaveAttribute('type', 'submit')
})
it('should not set the type if the "as" prop is not a "button"', async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {},
- [
- [DisclosureButton, { as: "div" }, "Trigger"]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+
+ `)
expect(getDisclosureButton()).not.toHaveAttribute('type')
})
@@ -323,32 +306,24 @@ describe("Rendering", () => {
)
it('should be possible to always render the DisclosurePanel if we provide it a `static` prop', () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {},
- [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, { static: true }, "Contents"]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
// Let's verify that the Disclosure is already there
expect(getDisclosurePanel()).not.toBe(null)
})
it('should be possible to use a different render strategy for the DisclosurePanel', async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {},
- [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, { unmount: false }, "Contents"]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({ state: DisclosureState.InvisibleHidden })
assertDisclosurePanel({ state: DisclosureState.InvisibleHidden })
@@ -438,23 +413,20 @@ describe('Composition', () => {
'should be possible to control the DisclosurePanel by wrapping it in a Transition component',
suppressConsoleLogs(async () => {
let orderFn = jest.fn()
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [TransitionDebug, { name: "Disclosure", fn: orderFn }],
- [Transition, {}, [
- [TransitionDebug, { name: "Transition", fn: orderFn }],
- [DisclosurePanel, {}, [
- [TransitionChild, {}, [
- [TransitionDebug, { name: "TransitionChild", fn: orderFn }],
- ]]
- ]]
- ]]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+
+
+
+
+
+
+
+
+
+
+ `)
// Verify the Disclosure is hidden
assertDisclosurePanel({ state: DisclosureState.InvisibleUnmounted })
@@ -489,15 +461,12 @@ describe('Keyboard interactions', () => {
it(
'should be possible to open the Disclosure with Enter',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -527,15 +496,12 @@ describe('Keyboard interactions', () => {
it(
'should not be possible to open the disclosure with Enter when the button is disabled',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, { disabled: true }, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -561,15 +527,12 @@ describe('Keyboard interactions', () => {
it(
'should be possible to close the disclosure with Enter when the disclosure is open',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -604,15 +567,12 @@ describe('Keyboard interactions', () => {
it(
'should be possible to open the disclosure with Space',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -638,15 +598,12 @@ describe('Keyboard interactions', () => {
it(
'should not be possible to open the disclosure with Space when the button is disabled',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, { disabled: true }, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -672,15 +629,12 @@ describe('Keyboard interactions', () => {
it(
'should be possible to close the disclosure with Space when the disclosure is open',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -716,15 +670,12 @@ describe('Mouse interactions', () => {
it(
'should be possible to open a disclosure on click',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -747,15 +698,12 @@ describe('Mouse interactions', () => {
it(
'should not be possible to open a disclosure on right click',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -778,15 +726,12 @@ describe('Mouse interactions', () => {
it(
'should not be possible to open a disclosure on click when the button is disabled',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, { disabled: true }, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
assertDisclosureButton({
state: DisclosureState.InvisibleUnmounted,
@@ -809,15 +754,12 @@ describe('Mouse interactions', () => {
it(
'should be possible to close a disclosure on click',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, "Contents"],
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+ Contents
+
+ `)
// Open disclosure
await click(getDisclosureButton())
@@ -837,17 +779,14 @@ describe('Mouse interactions', () => {
it(
'should be possible to close the Disclosure by clicking on a DisclosureButton inside a DisclosurePanel',
suppressConsoleLogs(async () => {
- render(
- TestRenderer, {
- allProps: [
- Disclosure, {}, [
- [DisclosureButton, {}, "Trigger"],
- [DisclosurePanel, {}, [
- [DisclosureButton, {}, "Close"]
- ]]
- ]
- ]
- })
+ render(svelte`
+
+ Trigger
+
+ Close
+
+
+ `)
// Open the disclosure
await click(getDisclosureButton())