Fix: Add initial stepper step to step history (#740)

This commit is contained in:
Wesley Yee
2020-05-07 10:42:55 -04:00
committed by GitHub
parent 5c8bd82aa1
commit 2e475ff00a
2 changed files with 28 additions and 1 deletions
@@ -23,6 +23,33 @@ const getTextInSlide = (rendered: any, index: number) =>
within(rendered.getByTestId(`step${index}`)).getByText;
describe('Stepper', () => {
it('Maintains state history', async () => {
const rendered = render(
wrapInTestApp(
<Stepper>
<Step title="Step 0" data-testid="step0">
<div>step0</div>
</Step>
<Step title="Step 1" data-testid="step1">
<div>step1</div>
</Step>
<Step title="Step 2" data-testid="step2">
<div>step2</div>
</Step>
</Stepper>,
),
);
fireEvent.click(getTextInSlide(rendered, 0)('Next') as Node);
expect(rendered.getByText('step1')).toBeInTheDocument();
fireEvent.click(getTextInSlide(rendered, 1)('Back') as Node);
expect(rendered.getByText('step0')).toBeInTheDocument();
fireEvent.click(getTextInSlide(rendered, 0)('Next') as Node);
expect(rendered.getByText('step1')).toBeInTheDocument();
});
it('Handles nextStep property', async () => {
const rendered = render(
wrapInTestApp(
@@ -42,7 +42,7 @@ export interface StepperProps {
const Stepper: FC<StepperProps> = ({ children, elevated, onStepChange }) => {
const [stepIndex, setStepIndex] = useState<number>(0);
const [stepHistory, setStepHistory] = useState<number[]>([]);
const [stepHistory, setStepHistory] = useState<number[]>([0]);
const steps: React.ReactNode[] = [];
let endStep;