add router to componenet tests

This commit is contained in:
Sorrel Bri 2020-02-29 12:59:33 -08:00
parent 201b4ca8b9
commit 22b4adb547
3 changed files with 8 additions and 6 deletions

View file

@ -5,7 +5,7 @@ import PhonoChangeApplier from './PhonoChangeApplier';
function App() { function App() {
return ( return (
<div className="App" data-testid="App"> <div className="App" data-testid="App">
<h1>Feature Change Applier</h1> <h1 data-testid="App-name">Feature Change Applier</h1>
<PhonoChangeApplier /> <PhonoChangeApplier />
</div> </div>
); );

View file

@ -1,5 +1,6 @@
import React from 'react'; import React from 'react';
import ReactDOM from 'react-dom'; import ReactDOM from 'react-dom';
import { HashRouter as Router } from 'react-router-dom';
import App from './App'; import App from './App';
import renderer from 'react-test-renderer'; import renderer from 'react-test-renderer';
import { exportAllDeclaration } from '@babel/types'; import { exportAllDeclaration } from '@babel/types';
@ -8,13 +9,13 @@ import extendExpect from '@testing-library/jest-dom/extend-expect'
it('renders App without crashing', () => { it('renders App without crashing', () => {
const div = document.createElement('div'); const div = document.createElement('div');
ReactDOM.render(<App />, div); ReactDOM.render(<Router><App /></Router>, div);
ReactDOM.unmountComponentAtNode(div); ReactDOM.unmountComponentAtNode(div);
}); });
describe('App', () => { describe('App', () => {
it('renders the correct title', () => { it('renders the correct title', () => {
const { getByTestId } = render(<App />); const { getByTestId } = render(<Router><App /></Router>);
expect(getByTestId('App')).toHaveTextContent('Phono Change Applier'); expect(getByTestId('App-name')).toHaveTextContent('Feature Change Applier');
}) })
}) })

View file

@ -1,5 +1,6 @@
import React from 'react'; import React from 'react';
import ReactDOM from 'react-dom'; import ReactDOM from 'react-dom';
import { HashRouter as Router } from 'react-router-dom';
import App from './App'; import App from './App';
import PhonoChangeApplier from './PhonoChangeApplier'; import PhonoChangeApplier from './PhonoChangeApplier';
import renderer from 'react-test-renderer'; import renderer from 'react-test-renderer';
@ -9,13 +10,13 @@ import extendExpect from '@testing-library/jest-dom/extend-expect'
it('renders PhonoChangeApplier without crashing', () => { it('renders PhonoChangeApplier without crashing', () => {
const div = document.createElement('div'); const div = document.createElement('div');
ReactDOM.render(<PhonoChangeApplier />, div); ReactDOM.render(<Router><PhonoChangeApplier /></Router>, div);
ReactDOM.unmountComponentAtNode(div); ReactDOM.unmountComponentAtNode(div);
}); });
describe('App', () => { describe('App', () => {
it('renders Proto Language Lexicon', () => { it('renders Proto Language Lexicon', () => {
const { getByTestId } = render(<PhonoChangeApplier />); const { getByTestId } = render(<Router><PhonoChangeApplier /></Router>);
expect(getByTestId('PhonoChangeApplier')).toHaveTextContent('Proto Language Lexicon'); expect(getByTestId('PhonoChangeApplier')).toHaveTextContent('Proto Language Lexicon');
}) })
}) })