{"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"dist-tags":{"latest":"1.6.0"},"author":{"name":"Christian Johansen"},"description":"Fake JavaScript timers","readme":"# Lolex [![Build Status](https://secure.travis-ci.org/sinonjs/lolex.png)](http://travis-ci.org/sinonjs/lolex) [![bitHound Overall Score](https://www.bithound.io/github/sinonjs/lolex/badges/score.svg)](https://www.bithound.io/github/sinonjs/lolex)\n\nJavaScript implementation of the timer APIs; `setTimeout`, `clearTimeout`,\n`setImmediate`, `clearImmediate`, `setInterval` and `clearInterval`, along with\na clock instance that controls the flow of time. Lolex also provides a `Date`\nimplementation that gets its time from the clock.\n\nLolex can be used to simulate passing time in automated tests and other\nsituations where you want the scheduling semantics, but don't want to actually\nwait. Lolex is extracted from [Sinon.JS](https://github.com/sinonjs/sinon.js).\n\n## Installation\n\nLolex can be used in both Node and browser environments. Installation is as easy as\n\n```sh\nnpm install lolex\n```\n\nIf you want to use Lolex in a browser you can use [the pre-built\nversion](https://github.com/sinonjs/lolex/blob/master/lolex.js) available in the repo\nand the npm package. Using npm you only need to reference `./node_modules/lolex/lolex.js` in your `<script>` tags.\n\nYou are always free to [build it yourself](https://github.com/sinonjs/lolex/blob/53ea4d9b9e5bcff53cc7c9755dc9aa340368cf1c/package.json#L22), of course.\n\n## Usage\n\nTo use lolex, create a new clock, schedule events on it using the timer\nfunctions and pass time using the `tick` method.\n\n```js\n// In the browser distribution, a global `lolex` is already available\nvar lolex = require(\"lolex\");\nvar clock = lolex.createClock();\n\nclock.setTimeout(function () {\n    console.log(\"The poblano is a mild chili pepper originating in the state of Puebla, Mexico.\");\n}, 15);\n\n// ...\n\nclock.tick(15);\n```\n\nUpon executing the last line, an interesting fact about the\n[Poblano](http://en.wikipedia.org/wiki/Poblano) will be printed synchronously to\nthe screen. If you want to simulate asynchronous behavior, you have to use your\nimagination when calling the various functions.\n\nThe `next`, `runAll`, and `runToLast` methods are available to advance the clock. See the\nAPI Reference for more details.\n\n### Faking the native timers\n\nWhen using lolex to test timers, you will most likely want to replace the native\ntimers such that calling `setTimeout` actually schedules a callback with your\nclock instance, not the browser's internals.\n\nCalling `install` with no arguments achieves this. You can call `uninstall`\nlater to restore things as they were again.\n\n```js\n// In the browser distribution, a global `lolex` is already available\nvar lolex = require(\"lolex\");\n\nvar clock = lolex.install();\n// Equivalent to\n// var clock = lolex.install(typeof global !== \"undefined\" ? global : window);\n\nsetTimeout(fn, 15); // Schedules with clock.setTimeout\n\nclock.uninstall();\n// setTimeout is restored to the native implementation\n```\n\nTo hijack timers in another context pass it to the `install` method.\n\n```js\nvar lolex = require(\"lolex\");\nvar context = {\n    setTimeout: setTimeout // By default context.setTimeout uses the global setTimeout\n}\nvar clock = lolex.install(context);\n\ncontext.setTimeout(fn, 15); // Schedules with clock.setTimeout\n\nclock.uninstall();\n// context.setTimeout is restored to the original implementation\n```\n\nUsually you want to install the timers onto the global object, so call `install`\nwithout arguments.\n\n## API Reference\n\n### `var clock = lolex.createClock([now[, loopLimit]])`\n\nCreates a clock. The default\n[epoch](https://en.wikipedia.org/wiki/Epoch_%28reference_date%29) is `0`.\n\nThe `now` argument may be a number (in milliseconds) or a Date object.\n\nThe `loopLimit` argument sets the maximum number of timers that will be run when calling `runAll()` before assuming that we have an infinite loop and throwing an error. The default is `1000`.\n\n### `var clock = lolex.install([context[, now[, toFake[, loopLimit]]]])`\n\n### `var clock = lolex.install([now[, toFake[, loopLimit]]])`\n\nCreates a clock and installs it onto the `context` object, or globally. The\n`now` argument is the same as in `lolex.createClock()`.\n\n`toFake` is an array of the names of the methods that should be faked. You can\npick from `setTimeout`, `clearTimeout`, `setImmediate`, `clearImmediate`,\n`setInterval`, `clearInterval`, and `Date`. E.g. `lolex.install([\"setTimeout\",\n\"clearTimeout\"])`.\n\nThe `loopLimit` argument is the same as in `lolex.createClock()`.\n\n### `var id = clock.setTimeout(callback, timeout)`\n\nSchedules the callback to be fired once `timeout` milliseconds have ticked by.\n\nIn Node.js `setTimeout` returns a timer object. Lolex will do the same, however\nits `ref()` and `unref()` methods have no effect.\n\nIn browsers a timer ID is returned.\n\n### `clock.clearTimeout(id)`\n\nClears the timer given the ID or timer object, as long as it was created using\n`setTimeout`.\n\n### `var id = clock.setInterval(callback, timeout)`\n\nSchedules the callback to be fired every time `timeout` milliseconds have ticked\nby.\n\nIn Node.js `setInterval` returns a timer object. Lolex will do the same, however\nits `ref()` and `unref()` methods have no effect.\n\nIn browsers a timer ID is returned.\n\n### `clock.clearInterval(id)`\n\nClears the timer given the ID or timer object, as long as it was created using\n`setInterval`.\n\n### `var id = clock.setImmediate(callback)`\n\nSchedules the callback to be fired once `0` milliseconds have ticked by. Note\nthat you'll still have to call `clock.tick()` for the callback to fire. If\ncalled during a tick the callback won't fire until `1` millisecond has ticked\nby.\n\nIn Node.js `setImmediate` returns a timer object. Lolex will do the same,\nhowever its `ref()` and `unref()` methods have no effect.\n\nIn browsers a timer ID is returned.\n\n### `clock.clearImmediate(id)`\n\nClears the timer given the ID or timer object, as long as it was created using\n`setImmediate`.\n\n### `clock.hrtime(prevTime?)`\nOnly available in Node.JS, mimicks process.hrtime().\n\n### `clock.tick(time)`\n\nAdvance the clock, firing callbacks if necessary. `time` may be the number of\nmilliseconds to advance the clock by or a human-readable string. Valid string\nformats are `\"08\"` for eight seconds, `\"01:00\"` for one minute and `\"02:34:10\"`\nfor two hours, 34 minutes and ten seconds.\n\n`time` may be negative, which causes the clock to change but won't fire any\ncallbacks.\n\n### `clock.next()`\n\nAdvances the clock to the the moment of the first scheduled timer, firing it.\n\n### `clock.runAll()`\n\nThis runs all pending timers until there are none remaining. If new timers are added while it is executing they will be run as well.\n\nThis makes it easier to run asynchronous tests to completion without worrying about the number of timers they use, or the delays in those timers.\n\nIt runs a maximum of `loopLimit` times after which it assumes there is an infinite loop of timers and throws an error.\n\n### `clock.runToLast()`\n\nThis takes note of the last scheduled timer when it is run, and advances the\nclock to that time firing callbacks as necessary.\n\nIf new timers are added while it is executing they will be run only if they\nwould occur before this time.\n\nThis is useful when you want to run a test to completion, but the test recursively\nsets timers that would cause `runAll` to trigger an infinite loop warning.\n\n### `clock.setSystemTime([now])`\n\nThis simulates a user changing the system clock while your program is running.\nIt affects the current time but it does not in itself cause e.g. timers to fire;\nthey will fire exactly as they would have done without the call to\nsetSystemTime().\n\n### `clock.uninstall()`\n\nRestores the original methods on the `context` that was passed to\n`lolex.install`, or the native timers if no `context` was given.\n\n### `Date`\n\nImplements the `Date` object but using the clock to provide the correct time.\n\n## Running tests\n\nLolex has a comprehensive test suite. If you're thinking of contributing bug\nfixes or suggesting new features, you need to make sure you have not broken any\ntests. You are also expected to add tests for any new behavior.\n\n### On node:\n\n```sh\nnpm test\n```\n\nOr, if you prefer more verbose output:\n\n```\n$(npm bin)/mocha ./test/lolex-test.js\n```\n\n### In the browser\n\n[Mochify](https://github.com/mantoni/mochify.js) is used to run the tests in\nPhantomJS. Make sure you have `phantomjs` installed. Then:\n\n```sh\nnpm test-headless\n```\n\n## License\n\nBSD 3-clause \"New\" or \"Revised\" License  (see LICENSE file)\n","repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"users":{"qqqppp9998":true,"morganz":true},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","versions":{"1.0.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.0.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"licenses":[{"type":"BSD","url":"http://github.com/sinonjs/lolex/blob/master/LICENSE"}],"scripts":{"test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"mocha":">=1.21 <2","mochify":">=1.0 <2","browserify":">=5.9 <6","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","_id":"lolex@1.0.0","dist":{"shasum":"8567eedb82e0500eb7b327305874a2b5b9dc8306","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.0.0.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"}],"directories":{}},"1.1.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.1.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"licenses":[{"type":"BSD","url":"http://github.com/sinonjs/lolex/blob/master/LICENSE"}],"scripts":{"test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"mocha":">=1.21 <2","mochify":">=1.0 <2","browserify":">=5.9 <6","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","_id":"lolex@1.1.0","dist":{"shasum":"5dbbbc850395e7523c74b3586f7fbd2626d25b1b","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.1.0.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"}],"directories":{}},"1.2.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.2.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"licenses":[{"type":"BSD","url":"http://github.com/sinonjs/lolex/blob/master/LICENSE"}],"scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","_id":"lolex@1.2.0","dist":{"shasum":"7698d1208b1b1ca8a5013315d57f4cc0fd4b0af9","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.2.0.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"}],"directories":{}},"1.2.1":{"name":"lolex","description":"Fake JavaScript timers","version":"1.2.1","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"licenses":[{"type":"BSD","url":"http://github.com/sinonjs/lolex/blob/master/LICENSE"}],"scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","_id":"lolex@1.2.1","dist":{"shasum":"a8f8eb7a4f8b3d9b4f38a3dee3273f7f1ec655f6","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.2.1.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"}],"directories":{}},"1.2.2":{"name":"lolex","description":"Fake JavaScript timers","version":"1.2.2","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD","scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","gitHead":"654ebd556c40154233fead90c2007a60913067a5","_id":"lolex@1.2.2","_shasum":"194563108cbe0e83bbbf6e7828f50d41424212bc","_from":".","_npmVersion":"2.4.1","_nodeVersion":"1.1.0","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"dist":{"shasum":"194563108cbe0e83bbbf6e7828f50d41424212bc","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.2.2.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"},{"name":"mantoni","email":"mail@maxantoni.de"}],"directories":{}},"1.3.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.3.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","gitHead":"4be1249a53e990349daf23df0c502a7f6e70db65","_id":"lolex@1.3.0","_shasum":"232dd3b0de6c661ce6f66e273b149886070d83ef","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"dist":{"shasum":"232dd3b0de6c661ce6f66e273b149886070d83ef","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.3.0.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"},{"name":"mantoni","email":"mail@maxantoni.de"}],"directories":{}},"1.3.1":{"name":"lolex","description":"Fake JavaScript timers","version":"1.3.1","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"http://github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","gitHead":"a93c8a9af05fb064ae5c2ad1bfc72874973167ee","_id":"lolex@1.3.1","_shasum":"92d4973c5fe8b08c0094f73270daf09332bbedf0","_from":".","_npmVersion":"2.1.11","_nodeVersion":"0.10.33","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"dist":{"shasum":"92d4973c5fe8b08c0094f73270daf09332bbedf0","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.3.1.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"},{"name":"mantoni","email":"mail@maxantoni.de"}],"directories":{}},"1.3.2":{"name":"lolex","description":"Fake JavaScript timers","version":"1.3.2","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"$(npm bin)/jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless && npm run test-cloud","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","gitHead":"9457345f0bcb0c98d085fae5ea18c7efd950a703","_id":"lolex@1.3.2","_shasum":"7c3da62ffcb30f0f5a80a2566ca24e45d8a01f31","_from":".","_npmVersion":"2.14.1","_nodeVersion":"0.10.40","_npmUser":{"name":"mrgnrdrck","email":"morgan@roderick.dk"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"},{"name":"mantoni","email":"mail@maxantoni.de"}],"dist":{"shasum":"7c3da62ffcb30f0f5a80a2566ca24e45d8a01f31","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.3.2.tgz"},"directories":{}},"1.4.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.4.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless","bundle":"browserify -s lolex -o lolex.js src/lolex.js"},"devDependencies":{"browserify":">=5.9 <6","jslint":"^0.6.6","mocha":">=1.21 <2","mochify":">=1.0 <2","referee":"~1.0","sinon":"~1.10"},"main":"./src/lolex.js","gitHead":"eddd6b8ee5e3a6c6caedd85125270498529cf417","_id":"lolex@1.4.0","_shasum":"2f2712b1bc180de9ddcc5d3a7a96ef3c0bb162ad","_from":".","_npmVersion":"2.14.9","_nodeVersion":"0.12.8","_npmUser":{"name":"mrgnrdrck","email":"morgan@roderick.dk"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"dist":{"shasum":"2f2712b1bc180de9ddcc5d3a7a96ef3c0bb162ad","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.4.0.tgz"},"directories":{}},"1.5.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.5.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"jslint src/**/*.js","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless","bundle":"browserify -s lolex -o lolex.js src/lolex-src.js"},"devDependencies":{"browserify":"^12.0.1","jslint":"^0.9.5","mocha":"^2.3.4","mochify":"^2.14.3","referee":"^1.2.0","sinon":"^1.17.2"},"main":"./src/lolex-src.js","gitHead":"5323ad08ca5b33f8274c2804dd48905d23842a47","_id":"lolex@1.5.0","_shasum":"35314f42e8425aca5b51844abcaf0160f56845da","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.8.0","_npmUser":{"name":"fatso83","email":"carlerik@gmail.com"},"dist":{"shasum":"35314f42e8425aca5b51844abcaf0160f56845da","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.5.0.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/lolex-1.5.0.tgz_1463560718190_0.17630193149670959"},"directories":{}},"1.5.1":{"name":"lolex","description":"Fake JavaScript timers","version":"1.5.1","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"eslint .","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless","bundle":"browserify -s lolex -o lolex.js src/lolex-src.js","prepublish":"npm run bundle"},"devDependencies":{"eslint":"^3.0.1","browserify":"^13.0.1","mocha":"^2.5.3","mochify":"^2.18.0","referee":"^1.2.0","sinon":"^1.17.4"},"main":"./src/lolex-src.js","contributors":[{"name":"Christian Johansen","email":"christian@cjohansen.no"},{"name":"Carl-Erik Kopseng","email":"carlerik@gmail.com"},{"name":"Morgan Roderick","email":"morgan@roderick.dk"},{"name":"Maximilian Antoni","email":"mail@maxantoni.de"},{"name":"Mark Wubben","email":"mark@novemberborn.net"},{"name":"Soutaro Matsumoto","email":"matsumoto@soutaro.com"},{"name":"Duncan Beevers","email":"duncan@dweebd.com"},{"name":"Rogier Schouten","email":"github@workingcode.ninja"},{"name":"Karl O'Keeffe","email":"karl@geckoboard.com"},{"name":"Thibault Hild","email":"gautaz@users.noreply.github.com"},{"name":"Curtis M. Humphrey, Ph.D","email":"curtis@createdwithflair.com"},{"name":"Mark Banner","email":"standard8@mozilla.com"},{"name":"Simen Bekkhus","email":"sbekkhus91@gmail.com"},{"name":"Sylvain Fraïssé","email":"fraisse.sylvain@gmail.com"},{"name":"Andy Edwards","email":"jedwards@fastmail.com"}],"gitHead":"9e654b931089564c7e2ca51b8cc1fea3622740b1","_id":"lolex@1.5.1","_shasum":"dbcf7c687cbc22e59d1a8d40208a720252f521d8","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"fatso83","email":"carlerik@gmail.com"},"dist":{"shasum":"dbcf7c687cbc22e59d1a8d40208a720252f521d8","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.5.1.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/lolex-1.5.1.tgz_1469689055118_0.5472339356783777"},"directories":{}},"1.5.2":{"name":"lolex","description":"Fake JavaScript timers","version":"1.5.2","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"eslint .","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless","bundle":"browserify -s lolex -o lolex.js src/lolex-src.js","prepublish":"npm run bundle"},"devDependencies":{"browserify":"^13.0.1","eslint":"^3.0.1","mocha":"^3.1.2","mochify":"^2.18.0","referee":"^1.2.0","sinon":"^1.17.4"},"main":"./src/lolex-src.js","contributors":[{"name":"Christian Johansen","email":"christian@cjohansen.no"},{"name":"Carl-Erik Kopseng","email":"carlerik@gmail.com"},{"name":"Morgan Roderick","email":"morgan@roderick.dk"},{"name":"Maximilian Antoni","email":"mail@maxantoni.de"},{"name":"Mark Wubben","email":"mark@novemberborn.net"},{"name":"Soutaro Matsumoto","email":"matsumoto@soutaro.com"},{"name":"Duncan Beevers","email":"duncan@dweebd.com"},{"name":"Rogier Schouten","email":"github@workingcode.ninja"},{"name":"Karl O'Keeffe","email":"karl@geckoboard.com"},{"name":"Thibault Hild","email":"gautaz@users.noreply.github.com"},{"name":"Curtis M. Humphrey, Ph.D","email":"curtis@createdwithflair.com"},{"name":"Mark Banner","email":"standard8@mozilla.com"},{"name":"Simen Bekkhus","email":"sbekkhus91@gmail.com"},{"name":"Sylvain Fraïssé","email":"fraisse.sylvain@gmail.com"},{"name":"Andy Edwards","email":"jedwards@fastmail.com"}],"gitHead":"ec406c26bfa207684fa7aed691d786daca330b43","_id":"lolex@1.5.2","_shasum":"94a4ce41c61185a05e98b8660dc509423ac1c416","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.8.1","_npmUser":{"name":"mrgnrdrck","email":"morgan@roderick.dk"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"dist":{"shasum":"94a4ce41c61185a05e98b8660dc509423ac1c416","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.5.2.tgz"},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/lolex-1.5.2.tgz_1478768060362_0.049887459725141525"},"directories":{}},"1.6.0":{"name":"lolex","description":"Fake JavaScript timers","version":"1.6.0","homepage":"http://github.com/sinonjs/lolex","author":{"name":"Christian Johansen"},"repository":{"type":"git","url":"git+ssh://git@github.com/sinonjs/lolex.git"},"bugs":{"url":"http://github.com/sinonjs/lolex/issues"},"license":"BSD-3-Clause","scripts":{"lint":"eslint .","test-node":"mocha -R dot","test-headless":"mochify","test-cloud":"mochify --wd","test":"npm run lint && npm run test-node && npm run test-headless","bundle":"browserify -s lolex -o lolex.js src/lolex-src.js","prepublish":"npm run bundle"},"devDependencies":{"browserify":"^14.1.0","eslint":"^3.16.1","eslint-config-sinon":"^1.0.0","eslint-plugin-mocha":"^4.8.0","mocha":"^3.2.0","mochify":"^3.0.0","referee":"^1.2.0","sinon":"^1.17.4"},"eslintConfig":{"extends":"eslint-config-sinon"},"main":"./src/lolex-src.js","contributors":[{"name":"Christian Johansen","email":"christian@cjohansen.no"},{"name":"Carl-Erik Kopseng","email":"carlerik@gmail.com"},{"name":"Morgan Roderick","email":"morgan@roderick.dk"},{"name":"Maximilian Antoni","email":"mail@maxantoni.de"},{"name":"Mark Wubben","email":"mark@novemberborn.net"},{"name":"Soutaro Matsumoto","email":"matsumoto@soutaro.com"},{"name":"Duncan Beevers","email":"duncan@dweebd.com"},{"name":"Rogier Schouten","email":"github@workingcode.ninja"},{"name":"Karl O'Keeffe","email":"karl@geckoboard.com"},{"name":"Thibault Hild","email":"gautaz@users.noreply.github.com"},{"name":"Curtis M. Humphrey, Ph.D","email":"curtis@createdwithflair.com"},{"name":"Mark Banner","email":"standard8@mozilla.com"},{"name":"Simen Bekkhus","email":"sbekkhus91@gmail.com"},{"name":"Sylvain Fraïssé","email":"fraisse.sylvain@gmail.com"},{"name":"Andy Edwards","email":"jedwards@fastmail.com"}],"gitHead":"71ba6ed003d607a5f0cfe862aa69fca81968e69e","_id":"lolex@1.6.0","_shasum":"3a9a0283452a47d7439e72731b9e07d7386e49f6","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.9.4","_npmUser":{"name":"cjohansen","email":"christian@cjohansen.no"},"dist":{"shasum":"3a9a0283452a47d7439e72731b9e07d7386e49f6","tarball":"http://nexus.dui88.com:8081/nexus/content/repositories/npm-registry/lolex/-/lolex-1.6.0.tgz"},"maintainers":[{"name":"cjohansen","email":"christian@cjohansen.no"},{"name":"fatso83","email":"carlerik@gmail.com"},{"name":"mantoni","email":"mail@maxantoni.de"},{"name":"mrgnrdrck","email":"morgan@roderick.dk"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/lolex-1.6.0.tgz_1488042979800_0.8557607622351497"},"directories":{}}},"name":"lolex","contributors":[{"name":"Christian Johansen","email":"christian@cjohansen.no"},{"name":"Carl-Erik Kopseng","email":"carlerik@gmail.com"},{"name":"Morgan Roderick","email":"morgan@roderick.dk"},{"name":"Maximilian Antoni","email":"mail@maxantoni.de"},{"name":"Mark Wubben","email":"mark@novemberborn.net"},{"name":"Soutaro Matsumoto","email":"matsumoto@soutaro.com"},{"name":"Duncan Beevers","email":"duncan@dweebd.com"},{"name":"Rogier Schouten","email":"github@workingcode.ninja"},{"name":"Karl O'Keeffe","email":"karl@geckoboard.com"},{"name":"Thibault Hild","email":"gautaz@users.noreply.github.com"},{"name":"Curtis M. Humphrey, Ph.D","email":"curtis@createdwithflair.com"},{"name":"Mark Banner","email":"standard8@mozilla.com"},{"name":"Simen Bekkhus","email":"sbekkhus91@gmail.com"},{"name":"Sylvain Fraïssé","email":"fraisse.sylvain@gmail.com"},{"name":"Andy Edwards","email":"jedwards@fastmail.com"}],"time":{"modified":"2017-02-25T17:16:20.548Z","created":"2014-11-12T21:51:47.902Z","1.0.0":"2014-11-12T21:51:47.902Z","1.1.0":"2014-11-14T21:20:26.127Z","1.2.0":"2014-12-12T19:36:24.198Z","1.2.1":"2015-01-06T21:23:26.102Z","1.2.2":"2015-07-22T06:33:01.836Z","1.3.0":"2015-08-19T19:40:04.161Z","1.3.1":"2015-08-20T08:33:53.257Z","1.3.2":"2015-09-22T11:22:03.233Z","1.4.0":"2015-12-11T17:55:29.680Z","1.5.0":"2016-05-18T08:38:40.932Z","1.5.1":"2016-07-28T06:57:36.896Z","1.5.2":"2016-11-10T08:54:20.984Z","1.6.0":"2017-02-25T17:16:20.548Z"},"readmeFilename":"Readme.md","homepage":"http://github.com/sinonjs/lolex"}