фермент тест перенаправления 404 маршрутизатор - PullRequest
0 голосов
/ 09 февраля 2019

Я пытаюсь проверить свой фермент маршрутизатора Redirect, и я не совсем уверен, как я мог это сделать.

Ниже приведен мой тест, который я написал до сих пор, но я не уверен, почему онне работает правильно.Может кто-нибудь показать мне и написать, как мне это проверить?Большое спасибо

import React, { Fragment } from 'react';
import {
  BrowserRouter as Router,
  Route,
  Switch,
  Redirect,
} from 'react-router-dom';

// Import Containers
import SettingsPage from 'containers/SettingsPage/Loadable';
import PaymentPage from 'containers/PaymentPage/Loadable';
import RegisterPage from 'containers/RegisterPage/Loadable';
import LoginPage from 'containers/LoginPage/Loadable';
import HomePage from 'containers/HomePage/Loadable';
import DashboardPage from 'containers/DashboardPage/Loadable';
import NotFoundPage from 'containers/NotFoundPage/Loadable';

// Import Components
import Header from '../../components/App/Header';

// Import Styles
import GlobalStyle from '../../global-styles';
export default function App() {
  return (
    <Fragment>
      <Router>
        <Switch>
          <Route exact path="/" component={HomePage} />
          <Route path="/login" component={LoginPage} />
          <Route path="/register" component={RegisterPage} />
          <Route path="/404" component={NotFoundPage} />
          <Header>
            <Switch>
              <Route path="/dashboard" component={DashboardPage} />
              <Route path="/payment" component={PaymentPage} />
              <Route path="/settings" component={SettingsPage} />
              <Route render={() => <Redirect to="/404" />} /> // test this line
            </Switch>
          </Header>
        </Switch>
      </Router>
      <GlobalStyle />
    </Fragment>
  );
}

Мой тест:

test('invalid path should redirect to 404', () => {
    const wrapper = mount(
      <Route initialEntries={['/foo']}>
        <App />
      </Route>,
    );
    expect(wrapper.find(LoginPage)).toHaveLength(0);
    expect(wrapper.find(NotFoundPage)).toHaveLength(1);
  });

  test('valid path should not redirect to 404', () => {
    const wrapper = mount(
      <Route initialEntries={['/login']}>
        <App />
      </Route>,
    );
    expect(wrapper.find(LoginPage)).toHaveLength(1);
    expect(wrapper.find(NotFoundPage)).toHaveLength(0);
  });

xxxxxxxxxxxxxxxx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...