summaryrefslogtreecommitdiffstats
path: root/src/components/molecules/forms/fieldset.test.tsx
diff options
context:
space:
mode:
authorArmand Philippot <git@armandphilippot.com>2022-06-01 22:37:56 +0200
committerGitHub <noreply@github.com>2022-06-01 22:37:56 +0200
commit0a33a4658d848fe056715c6da053763407845b2a (patch)
tree7c679e54ba4bbadaf0a59bbde780f5742e3b875d /src/components/molecules/forms/fieldset.test.tsx
parent97031a86ca38890e60ecec79828498b7bb13cbfa (diff)
parent6be20422494e3806fba3d1c5ad5c3e98bd6e67e5 (diff)
chore(a11y): improve website settings accessibility (#17)
The previous switch buttons (using checkbox) was not a11y compliant. So I change my approach to use radio buttons and to clearly separate the two different states. I also convert the Ackee select setting to improve consistency between settings.
Diffstat (limited to 'src/components/molecules/forms/fieldset.test.tsx')
-rw-r--r--src/components/molecules/forms/fieldset.test.tsx22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/components/molecules/forms/fieldset.test.tsx b/src/components/molecules/forms/fieldset.test.tsx
new file mode 100644
index 0000000..de89e31
--- /dev/null
+++ b/src/components/molecules/forms/fieldset.test.tsx
@@ -0,0 +1,22 @@
+import { render, screen } from '@test-utils';
+import Fieldset from './fieldset';
+import { body, legend, Tooltip } from './fieldset.fixture';
+
+describe('Fieldset', () => {
+ // Cannot use toBeInTheDocument because of body is not an HTMLElement.
+
+ it('renders a legend and a body', () => {
+ render(<Fieldset legend={legend}>{body}</Fieldset>);
+ expect(screen.findByRole('group', { name: legend })).toBeTruthy();
+ expect(screen.findByText(body)).toBeTruthy();
+ });
+
+ it('renders a button to open a tooltip', () => {
+ render(
+ <Fieldset legend={legend} Tooltip={Tooltip}>
+ {body}
+ </Fieldset>
+ );
+ expect(screen.findByRole('button', { name: /Help/i })).toBeTruthy();
+ });
+});