enzyme-context-react-router-4
Introduction
This plugin sets up the context required for react-router
(v4) and exposes a history
instance so that tests can manipulate the URL. With this plugin enabled, it is possible to mount all react-router
components in your test, including <Link />
, <Route />
, etc.
Installation
-
Setup required peer dependencies: enzyme, react, react-router v4, and react-test-renderer.
-
Install via yarn or npm
$> yarn add -D enzyme-context enzyme-context-react-router-4 -
Add to plugins:
;;const plugins =history:;const mount = ;const shallow = ;
Usage
After adding the plugin to your mount
/shallow
, it can be used in your tests like so:
; // import the mount created with enzyme-context;; ;
Configuration API
routerContext() => EnzymePlugin
Returns
EnzymePlugin
: The plugin which can be passed to createMount
/createShallow
.
Example:
;; const plugins = history: ; const mount = ;const shallow = ;
Mount/Shallow API
This plugin also allows some configuration to be passed at mount-time:
routerConfig
(Object
[optional]): any of the configuration options ofhistory
'screateMemoryHistory()
. For example, we can set the URL before our component mounts like so:const wrapper =;