Skip to content

enmanuelduran/fixtour

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fixtour · GitHub license npm version Coverage Status CircleCI

A fast, lightweight library that helps you load external fixtures into your unit test's environment, especially oriented (but not limited) to Jest.

The why?

Usually, jest is a library that is used alongside react, and in react it is very easy to mock your components because of enzyme, but what happens to the other big group of projects that do not use a virtual-dom and keep mocking components with HTML? well, that's why this library exists.

In a nutshell, fixtour is a module that helps you keep your HTML, JSON... fixtures isolated and allows you to inject these into your tests while it is also caching them in the process.

Installation

Install Fixtour using yarn:

yarn add --dev fixtour

Or npm:

npm install --save-dev fixtour

Usage

Fixtour exposes its API through the Fixtour object, so you just have to import it:

import Fixtour from 'fixtour';

then you should be able to access its whole API.

API

html(string)

Receives the route to the file from your project's root, reads the file and injects it into the document.body. It caches the content of the files so if you pass the same route twice the second time it will be fetched from the cache.

Fixtour.html('tests/fixtures/test.html')

json(string)

Receives the route to the file from your project's root, reads the file and returns the content after validating it and parsing it. It caches the return value in the same way as html().

Fixtour.json('tests/fixtures/test.json')

clear()

Clears up the document body through document.body.innerHTML = ''. It is recommended that you run this function in the afterEach of your test cases.

Fixtour.clear();

clearCache()

Clears up the cache. Especially helpful in cases where you may be storing very large results, however, keep in mind that your unit tests should test small chunks of information so having large files might be a code smell for modules that could be improved.

Fixtour.clearCache();

getCachedFixtures()

Helpful for debugging, returns a object representing all the cached elements.

Fixtour.getCachedFixtures();

About

A Fast/Lightweight Fixture Loader for Jest.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published