59 строки
2.0 KiB
JavaScript
59 строки
2.0 KiB
JavaScript
require("../env");
|
|
|
|
var assert = require("assert");
|
|
|
|
module.exports = {
|
|
topic: function() {
|
|
var s = d3.select("body").append("div")
|
|
.attr("display", "none")
|
|
.attr("font-size", "20px")
|
|
.attr("width", 20)
|
|
.attr("color", "red")
|
|
.attr("xlink:type", "simple")
|
|
.attr("xlink:href", "http://mbostock.github.com/d3/");
|
|
|
|
var t = s.transition()
|
|
.attr("display", null)
|
|
.attr("font-size", function() { return null; })
|
|
.attr("display", null)
|
|
.attr("width", 100)
|
|
.attr("width", 200)
|
|
.attr("color", function() { return "green"; })
|
|
.attr("xlink:href", null)
|
|
.attr("xlink:type", function() { return null; });
|
|
|
|
return {selection: s, transition: t};
|
|
},
|
|
"defines the corresponding attr tween": function(result) {
|
|
assert.typeOf(result.transition.tween("attr.width"), "function");
|
|
assert.typeOf(result.transition.tween("attr.color"), "function");
|
|
},
|
|
"on end": {
|
|
topic: function(result) {
|
|
var cb = this.callback;
|
|
result.transition.each("end", function() { cb(null, result); });
|
|
},
|
|
"the last attr operator takes precedence": function(result) {
|
|
assert.equal(result.selection.attr("width"), "200");
|
|
},
|
|
"sets an attribute as a number": function(result) {
|
|
assert.equal(result.selection.attr("width"), "200");
|
|
},
|
|
"sets an attribute as a function": function(result) {
|
|
assert.equal(result.selection.attr("color"), "#008000");
|
|
},
|
|
"removes an attribute using a constant null": function(result) {
|
|
assert.equal(result.selection.attr("display"), "");
|
|
},
|
|
"removes an attribute using a function null": function(result) {
|
|
assert.equal(result.selection.attr("font-size"), "");
|
|
},
|
|
"removes a namespaced attribute using a constant null": function(result) {
|
|
assert.equal(result.selection.attr("xlink:href"), "");
|
|
},
|
|
"removes a namespaced attribute using a function null": function(result) {
|
|
assert.equal(result.selection.attr("xlink:type"), "");
|
|
}
|
|
}
|
|
};
|