import React from 'react';
import { render, screen } from '@testing-library/react';
import { Slider } from '../Slider';
import { Button } from '../../Button';
describe('slider', () => {
test('renders continuous slider', () => {
const { asFragment } = render();
expect(asFragment()).toMatchSnapshot();
});
test('renders discrete slider', () => {
const { asFragment } = render();
expect(asFragment()).toMatchSnapshot();
});
test('renders discrete slider with custom steps', () => {
const { asFragment } = render(
);
expect(asFragment()).toMatchSnapshot();
});
test('renders continuous slider with custom steps', () => {
const { asFragment } = render(
);
expect(asFragment()).toMatchSnapshot();
});
test('renders slider with input', () => {
const { asFragment } = render(
);
expect(asFragment()).toMatchSnapshot();
});
test('renders slider with input above thumb', () => {
const { asFragment } = render(
);
expect(asFragment()).toMatchSnapshot();
});
test('renders slider with input actions', () => {
const { asFragment } = render(
}
rightActions={}
/>
);
expect(asFragment()).toMatchSnapshot();
});
test('renders disabled slider', () => {
const { asFragment } = render();
expect(asFragment()).toMatchSnapshot();
});
test('renders slider with tooltip on thumb', () => {
const { asFragment } = render();
expect(asFragment()).toMatchSnapshot();
});
});
test('renders slider with aria-labelledby', () => {
render(
<>
label text
>
);
const slider = screen.getByRole('slider', { name: 'label text' });
expect(slider).toBeVisible();
});
test('renders slider with aria-describedby', () => {
render(
<>
descriptive text about the slider
>
);
const slider = screen.getByRole('slider', { description: 'descriptive text about the slider' });
expect(slider).toBeVisible();
});