diff --git a/src/assets/images/icons/arrow-back.svg b/src/assets/images/icons/arrow-back.svg new file mode 100644 index 0000000..5d30782 --- /dev/null +++ b/src/assets/images/icons/arrow-back.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/screens/Survey/index.test.tsx b/src/screens/Survey/index.test.tsx new file mode 100644 index 0000000..f1497b9 --- /dev/null +++ b/src/screens/Survey/index.test.tsx @@ -0,0 +1,35 @@ +import React from 'react'; + +import { render, screen } from '@testing-library/react'; + +import TestWrapper from 'tests/TestWrapper'; + +import SurveyScreen, { surveyScreenTestIds } from '.'; + +describe('SurveyScreen', () => { + const TestComponent = (): JSX.Element => { + return ( + + + + ); + }; + + it('renders Survey screen and its components', () => { + render(); + const backgroundImage = screen.getByTestId(surveyScreenTestIds.backgroundImage); + const backButton = screen.getByTestId(surveyScreenTestIds.backButton); + const coverImage = screen.getByTestId(surveyScreenTestIds.coverImage); + const title = screen.getByTestId(surveyScreenTestIds.title); + const description = screen.getByTestId(surveyScreenTestIds.description); + const startSurveyButton = screen.getByTestId(surveyScreenTestIds.startSurveyButton); + + expect(backgroundImage).toBeVisible(); + expect(backButton).toBeVisible(); + expect(coverImage).toBeVisible(); + expect(title).toBeVisible(); + expect(description).toBeVisible(); + expect(startSurveyButton).toBeVisible(); + expect(startSurveyButton).toHaveTextContent('Start Survey'); + }); +}); diff --git a/src/screens/Survey/index.tsx b/src/screens/Survey/index.tsx index d997b23..896888f 100644 --- a/src/screens/Survey/index.tsx +++ b/src/screens/Survey/index.tsx @@ -1,10 +1,53 @@ import React from 'react'; -import { useParams } from 'react-router-dom'; -const SurveyScreen = (): JSX.Element => { - const { id } = useParams(); +import { ReactComponent as ArrowBack } from 'assets/images/icons/arrow-back.svg'; +import BackgroundImage from 'components/BackgroundImage'; +import ElevatedButton from 'components/ElevatedButton'; + +export const surveyScreenTestIds = { + backgroundImage: 'survey__background-image', + backButton: 'survey__back-button', + coverImage: 'survey__cover-image', + title: 'survey__title-text', + description: 'survey__description-text', + startSurveyButton: 'survey__start-survey-button', +}; - return
Dashboard detail {id}
; +const SurveyScreen = (): JSX.Element => { + return ( + +
+ +
+ survey +

+ Working from home Check-In +

+

+ We would like to know how you feel about our work from home (WFH) experience. +

+
+ + Start Survey + +
+
+
+
+ ); }; export default SurveyScreen;