var vows = require(“vows”),
load = require("../load"), assert = require("../assert");
var suite = vows.describe(“d3.keys”);
suite.addBatch({
"keys": { topic: load("arrays/keys").expression("d3.keys"), "enumerates every defined key": function(keys) { assert.deepEqual(keys({a: 1, b: 1}), ["a", "b"]); }, "includes keys defined on prototypes": function(keys) { function abc() { this.a = 1; this.b = 2; } abc.prototype.c = 3; assert.deepEqual(keys(new abc()), ["a", "b", "c"]); }, "includes keys with null or undefined values": function(keys) { assert.deepEqual(keys({a: undefined, b: null, c: NaN}), ["a", "b", "c"]); } }
});
suite.export(module);