| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- chai = require "chai"
 
- chai.use(require "chai-increasing")
 
- {assert,expect} = chai
 
- Bluebird = require "bluebird"
 
- now = require "../"
 
- getUptime = -> process.uptime() * 1e3
 
- describe "now", ->
 
-   it "reported time differs at most 1ms from a freshly reported uptime", ->
 
-     assert.isAtMost Math.abs(now()-getUptime()), 1
 
-   it "two subsequent calls return an increasing number", ->
 
-     assert.isBelow now(), now()
 
-   it "has less than 10 microseconds overhead", ->
 
-     assert.isBelow Math.abs(now() - now()), 0.010
 
-   it "can be called 1 million times in under 1 second (averaging under 1 microsecond per call)", ->
 
-     @timeout 1000
 
-     now() for [0...1e6]
 
-     undefined
 
-   it "for 10,000 numbers, number n is never bigger than number n-1", ->
 
-     stamps = (now() for [1...10000])
 
-     expect(stamps).to.be.increasing
 
-   it "shows that at least 0.2 ms has passed after a timeout of 1 ms", ->
 
-     earlier = now()
 
-     Bluebird.resolve().delay(1).then -> assert.isAbove (now()-earlier), 0.2
 
-   it "shows that at most 3 ms has passed after a timeout of 1 ms", ->
 
-     earlier = now()
 
-     Bluebird.resolve().delay(1).then -> assert.isBelow (now()-earlier), 3
 
-   it "shows that at least 190ms ms has passed after a timeout of 200ms", ->
 
-     earlier = now()
 
-     Bluebird.resolve().delay(200).then -> assert.isAbove (now()-earlier), 190
 
-   it "shows that at most 220 ms has passed after a timeout of 200ms", ->
 
-     earlier = now()
 
-     Bluebird.resolve().delay(200).then -> assert.isBelow (now()-earlier), 220
 
 
  |