diff -r efd9c589177a -r c0b4a8b5a012 toolkit/javascript/d3/test/core/transition-test-call.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/toolkit/javascript/d3/test/core/transition-test-call.js Thu Apr 10 14:20:23 2014 +0200 @@ -0,0 +1,33 @@ +require("../env"); +require("../../d3"); + +var assert = require("assert"); + +module.exports = { + topic: function() { + return d3.select("body").append("div").transition(); + }, + "calls the function once": function(transition) { + var count = 0; + transition.call(function() { ++count; }); + assert.equal(count, 1); + }, + "passes any optional arguments": function(transition) { + var abc; + transition.call(function(selection, a, b, c) { abc = [a, b, c]; }, "a", "b", "c"); + assert.deepEqual(abc, ["a", "b", "c"]); + }, + "passes the transition as the first argument": function(transition) { + var t; + transition.call(function(x) { t = x; }); + assert.isTrue(t === transition); + }, + "uses the transition as the context": function(transition) { + var t; + transition.call(function() { t = this; }); + assert.isTrue(t === transition); + }, + "returns the current transition": function(transition) { + assert.isTrue(transition.call(function() {}) === transition); + } +};