toolkit/javascript/d3/test/core/zip-test.js
changeset 47 c0b4a8b5a012
equal deleted inserted replaced
46:efd9c589177a 47:c0b4a8b5a012
       
     1 require("../env");
       
     2 require("../../d3");
       
     3 
       
     4 var vows = require("vows"),
       
     5     assert = require("assert");
       
     6 
       
     7 var suite = vows.describe("d3.zip");
       
     8 
       
     9 suite.addBatch({
       
    10   "zip": {
       
    11     topic: function() {
       
    12       return d3.zip;
       
    13     },
       
    14     "transposes a square matrix": function(zip) {
       
    15       assert.deepEqual(d3.zip([1, 2], [3, 4]), [[1, 3], [2, 4]]);
       
    16     },
       
    17     "transposes a non-square matrix": function(zip) {
       
    18       assert.deepEqual(d3.zip([1, 2, 3, 4, 5], [2, 4, 6, 8, 10]), [[1, 2], [2, 4], [3, 6], [4, 8], [5, 10]]);
       
    19     },
       
    20     "transposes a single-row matrix": function(zip) {
       
    21       assert.deepEqual(d3.zip([1, 2, 3, 4, 5]), [[1], [2], [3], [4], [5]]);
       
    22     },
       
    23     "transposes an empty matrix": function(zip) {
       
    24       assert.deepEqual(d3.zip(), []);
       
    25     },
       
    26     "ignores extra elements given an irregular matrix": function(zip) {
       
    27       assert.deepEqual(d3.zip([1, 2], [3, 4], [5, 6, 7]), [[1, 3, 5], [2, 4, 6]]);
       
    28     }
       
    29   }
       
    30 });
       
    31 
       
    32 suite.export(module);