From 0d7bc6b92c1788c11c57047f64170dd86d0c4b24 Mon Sep 17 00:00:00 2001 From: Clement G Date: Wed, 22 May 2019 23:17:20 +0200 Subject: [PATCH] Write routes test on App --- src/App.test.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/App.test.js b/src/App.test.js index a754b20..0bf528b 100644 --- a/src/App.test.js +++ b/src/App.test.js @@ -1,9 +1,46 @@ import React from 'react'; import ReactDOM from 'react-dom'; +import { Route } from 'react-router-dom'; import App from './App'; +import Adapter from 'enzyme-adapter-react-16'; +import { shallow,configure } from 'enzyme'; + +import Home from "./components/views/Home.js"; +import CreateBallot from "./components/views/CreateBallot.js"; +import UnknownView from "./components/views/UnknownView"; + +configure({ adapter: new Adapter() }) it('renders without crashing', () => { const div = document.createElement('div'); ReactDOM.render(, div); ReactDOM.unmountComponentAtNode(div); }); + + +let pathMap = {}; +describe('open good View component for each route', () => { + + beforeAll(() => { + const App = shallow(); + pathMap = App.find(Route).reduce((pathMap, route) => { + const routeProps = route.props(); + pathMap[routeProps.path] = routeProps.component; + return pathMap; + }, {}); + console.log(pathMap) + }); + + it('should show Home component for `/`', () => { + expect(pathMap['/']).toBe(Home); + }); + + it('should show CreateBallot component for `/create-ballot`', () => { + expect(pathMap['/create-ballot']).toBe(CreateBallot); + }); + + /*it('should show UnknowView component for `/xvwverdtebdj`', () => { + expect(pathMap['/xvwverdtebdj']).toBe(UnknownView); + });*/ + +}); \ No newline at end of file