39 строки
1.3 KiB
JavaScript
39 строки
1.3 KiB
JavaScript
var assert = require("../assert");
|
|
|
|
module.exports = {
|
|
topic: function(d3) {
|
|
return d3; // bug in vows where topic is not propagated automatically
|
|
},
|
|
"on a new transition": {
|
|
topic: function(d3) {
|
|
return d3.select("body").append("div").transition();
|
|
},
|
|
"is approximately equal to now": function(transition) {
|
|
var time = transition[0][0].__transition__[transition.id].time;
|
|
assert.inDelta(time, Date.now(), 20);
|
|
}
|
|
},
|
|
"increases monotonically across transitions": function(d3) {
|
|
var now = Date.now, then = Date.now();
|
|
try {
|
|
Date.now = function() { return ++then; };
|
|
var t0 = d3.select("body").append("div").transition(),
|
|
t1 = d3.select("body").append("div").transition();
|
|
assert.isTrue(t1[0][0].__transition__[t1.id].time > t0[0][0].__transition__[t0.id].time);
|
|
} finally {
|
|
Date.now = now;
|
|
}
|
|
},
|
|
"is inherited by subtransitions": function(d3) {
|
|
var now = Date.now, then = Date.now();
|
|
try {
|
|
Date.now = function() { return ++then; };
|
|
var t0 = d3.select("body").append("div").transition(),
|
|
t1 = t0.transition();
|
|
assert.equal(t1[0][0].__transition__[t1.id].time, t0[0][0].__transition__[t0.id].time);
|
|
} finally {
|
|
Date.now = now;
|
|
}
|
|
}
|
|
};
|