mirror of
https://github.com/portainer/portainer.git
synced 2025-07-19 13:29:41 +02:00
Some checks are pending
ci / build_images (map[arch:amd64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
ci / build_images (map[arch:arm platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:arm64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:ppc64le platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:s390x platform:linux version:]) (push) Waiting to run
ci / build_manifests (push) Blocked by required conditions
/ triage (push) Waiting to run
Lint / Run linters (push) Waiting to run
Test / test-client (push) Waiting to run
Test / test-server (map[arch:amd64 platform:linux]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
Test / test-server (map[arch:arm64 platform:linux]) (push) Waiting to run
52 lines
1.3 KiB
TypeScript
52 lines
1.3 KiB
TypeScript
import { render, fireEvent } from '@testing-library/react';
|
|
|
|
import { SwitchField, Props } from './SwitchField';
|
|
|
|
function renderDefault({
|
|
name = 'default name',
|
|
checked = false,
|
|
label = 'label',
|
|
onChange = vi.fn(),
|
|
index,
|
|
}: Partial<Props> = {}) {
|
|
return render(
|
|
<SwitchField
|
|
label={label}
|
|
data-cy="switch-field"
|
|
name={name}
|
|
checked={checked}
|
|
onChange={onChange}
|
|
index={index}
|
|
/>
|
|
);
|
|
}
|
|
|
|
test('should display a Switch component', async () => {
|
|
const { findByRole } = renderDefault();
|
|
|
|
const switchElem = await findByRole('checkbox');
|
|
expect(switchElem).toBeTruthy();
|
|
});
|
|
|
|
test('clicking should emit on-change with the opposite value', async () => {
|
|
const onChange = vi.fn();
|
|
const checked = true;
|
|
const { findByRole } = renderDefault({ onChange, checked });
|
|
|
|
const switchElem = await findByRole('checkbox');
|
|
fireEvent.click(switchElem);
|
|
|
|
expect(onChange).toHaveBeenCalledWith(!checked, undefined);
|
|
});
|
|
|
|
test('clicking should emit on-change with the opposite value and index', async () => {
|
|
const onChange = vi.fn();
|
|
const checked = true;
|
|
const index = 3;
|
|
const { findByRole } = renderDefault({ onChange, checked, index });
|
|
|
|
const switchElem = await findByRole('checkbox');
|
|
fireEvent.click(switchElem);
|
|
|
|
expect(onChange).toHaveBeenCalledWith(!checked, index);
|
|
});
|