diff --git a/web/ui/react-app/src/pages/starting/Starting.test.tsx b/web/ui/react-app/src/pages/starting/Starting.test.tsx new file mode 100644 index 000000000..80fc81430 --- /dev/null +++ b/web/ui/react-app/src/pages/starting/Starting.test.tsx @@ -0,0 +1,45 @@ +import * as React from 'react'; +import { shallow } from 'enzyme'; +import { WALReplayData } from '../../types/types'; +import { StartingContent } from './Starting'; +import { Progress } from 'reactstrap'; + +describe('Starting', () => { + describe('progress bar', () => { + it('does not show when replay not started', () => { + const status: WALReplayData = { + min: 0, + max: 0, + current: 0, + }; + const starting = shallow(); + const progress = starting.find(Progress); + expect(progress).toHaveLength(0); + }); + + it('renders progress correctly', () => { + const status: WALReplayData = { + min: 0, + max: 20, + current: 1, + }; + const starting = shallow(); + const progress = starting.find(Progress); + expect(progress.prop('value')).toBe(2); + expect(progress.prop('min')).toBe(0); + expect(progress.prop('max')).toBe(21); + }); + + it('shows done when replay done', () => { + const status: WALReplayData = { + min: 0, + max: 20, + current: 20, + }; + const starting = shallow(); + const progress = starting.find(Progress); + expect(progress.prop('value')).toBe(21); + expect(progress.prop('color')).toBe('success'); + }); + }); +}); diff --git a/web/ui/react-app/src/pages/starting/Starting.tsx b/web/ui/react-app/src/pages/starting/Starting.tsx index 24d45e1fb..936fea050 100644 --- a/web/ui/react-app/src/pages/starting/Starting.tsx +++ b/web/ui/react-app/src/pages/starting/Starting.tsx @@ -31,9 +31,9 @@ export const StartingContent: FC = ({ status, isUnexpected