ES6 accessible module for MockDate within your Ember application
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
addon
app
config
tests
vendor
.bowerrc
.editorconfig
.ember-cli
.eslintrc.js
.gitignore
.npmignore
.travis.yml
.watchmanconfig
LICENSE.md
README.md
bower.json
ember-cli-build.js
index.js
package.json
testem.js
yarn.lock

README.md

ember-mockdate-shim

Build Status

ES6 accessible module for MockDate within your Ember applications.

Installation

ember install ember-mockdate-shim

Usage

MockDate's set and reset methods are renamed to freezeDateAt and unfreezeDate respectively.

import { freezeDateAt, unfreezeDate } from 'ember-mockdate-shim';

freezeDateAt(new Date('1/12/2017'));
unfreezeDate();

This is primarily useful for keeping the time data consistent between tests (ie: for visual diffs a la Percy). Any library methods that rely on new Date() will return consistent outputs. For example: moment() and faker.date.recent

You can use this in the beforeEach and afterEach hooks of your tests, or anywhere else you want to freeze the date at, how ever many times you want!

Please note that acceptance test support is only available in Ember >2.15.1 as that is when backburner.js introduced the ability to make "now" configurable. More info here.

For use cases outside of tests, keep in mind that the shim is not included in production builds. See index.js for more info.

Running

Running Tests

  • yarn test (Runs ember try:each to test your addon against multiple Ember versions)
  • ember test
  • ember test --server

Building

  • ember build

For more information on using ember-cli, visit https://ember-cli.com/.