diff --git a/tests/unit/elements/inputRadio.test.ts b/tests/unit/elements/inputRadio.test.ts
index de87b6aef..1b7387be9 100644
--- a/tests/unit/elements/inputRadio.test.ts
+++ b/tests/unit/elements/inputRadio.test.ts
@@ -1,6 +1,7 @@
import '@testing-library/jest-dom';
-import { render } from '@testing-library/svelte';
+import { render, fireEvent } from '@testing-library/svelte';
import { InputRadio } from '../../../src/lib/elements/forms';
+import radioGroup from './radioGroup.test.svelte';
const data = {
id: 'radio',
@@ -28,4 +29,25 @@ test('shows boolean input - disabled', () => {
expect(getByRole('radio')).toBeDisabled();
});
-//TODO: create group of radio inputs and test state
+test('state', async () => {
+ const { getByLabelText } = render(radioGroup);
+
+ const one = getByLabelText('one');
+ const two = getByLabelText('two');
+ const three = getByLabelText('three');
+
+ await fireEvent.click(one);
+ expect(one).toBeChecked();
+ expect(two).not.toBeChecked();
+ expect(three).not.toBeChecked();
+
+ await fireEvent.click(two);
+ expect(one).not.toBeChecked();
+ expect(two).toBeChecked();
+ expect(three).not.toBeChecked();
+
+ await fireEvent.click(three);
+ expect(one).not.toBeChecked();
+ expect(two).not.toBeChecked();
+ expect(three).toBeChecked();
+});
diff --git a/tests/unit/elements/radioGroup.test.svelte b/tests/unit/elements/radioGroup.test.svelte
new file mode 100644
index 000000000..9b4f5bdfa
--- /dev/null
+++ b/tests/unit/elements/radioGroup.test.svelte
@@ -0,0 +1,7 @@
+
+
+
+
+