Add forcing support and improve tests
Also verify that we're using tabs, whee.
This commit is contained in:
parent
86ce23a2bd
commit
0cf509f674
3 changed files with 104 additions and 29 deletions
|
|
@ -7,23 +7,63 @@ var async = require("./async")
|
|||
var limiter = require("../limiter")
|
||||
|
||||
o.spec("fps limiter", function() {
|
||||
var $window, root
|
||||
var $window, root
|
||||
|
||||
[ "setTimeout", "requestAnimationFrame" ].forEach(function(type) {
|
||||
o.spec(type, function() {
|
||||
o.beforeEach(function() {
|
||||
$window = domMock()
|
||||
|
||||
async[type]($window)
|
||||
})
|
||||
|
||||
o("is a function", function() {
|
||||
o(typeof limiter).equals("function")
|
||||
})
|
||||
|
||||
o("it returns a function", function() {
|
||||
o(typeof limiter(false)).equals("function")
|
||||
})
|
||||
})
|
||||
})
|
||||
[
|
||||
"setTimeout",
|
||||
"requestAnimationFrame",
|
||||
].forEach(function(type) {
|
||||
o.spec(type, function() {
|
||||
o.beforeEach(function() {
|
||||
$window = domMock()
|
||||
|
||||
async[type]($window)
|
||||
})
|
||||
|
||||
o("is a function", function() {
|
||||
o(typeof limiter).equals("function")
|
||||
})
|
||||
|
||||
o("it returns a function", function() {
|
||||
o(typeof limiter($window, false)).equals("function")
|
||||
})
|
||||
|
||||
o("it runs synchronously the first time", function() {
|
||||
var spy = o.spy()
|
||||
var run = limiter($window, spy)
|
||||
|
||||
run()
|
||||
|
||||
o(spy.callCount).equals(1)
|
||||
})
|
||||
|
||||
o("it only runs once per tick", function(done) {
|
||||
var spy = o.spy()
|
||||
var run = limiter($window, spy)
|
||||
|
||||
run()
|
||||
run()
|
||||
run()
|
||||
|
||||
o(spy.callCount).equals(1)
|
||||
|
||||
setTimeout(function() {
|
||||
o(spy.callCount).equals(2)
|
||||
|
||||
done()
|
||||
}, 17)
|
||||
})
|
||||
|
||||
o("it supports forcing a synchronous redraw", function() {
|
||||
var spy = o.spy()
|
||||
var run = limiter($window, spy)
|
||||
|
||||
run()
|
||||
run()
|
||||
run(true)
|
||||
|
||||
o(spy.callCount).equals(2)
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue