time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

cumprod-test.js (1406B)


      1 var vows = require('vows');
      2 var assert = require('assert');
      3 var suite = vows.describe('jStat.cumprod');
      4 
      5 require('../env.js');
      6 
      7 suite.addBatch({
      8   'cumprod': {
      9     'topic': function() {
     10       return jStat;
     11     },
     12     'return basic cumprod': function(jStat) {
     13       assert.deepEqual(jStat.cumprod([1, 2, 3]), [1, 2, 6]);
     14     },
     15     'cumprod from instance': function(jStat) {
     16       assert.deepEqual(jStat([1, 2, 3]).cumprod(), [1, 2, 6]);
     17     },
     18     'cumprod matrix cols': function(jStat) {
     19       assert.deepEqual(jStat([[1, 2], [3, 4]]).cumprod(), [[1, 3], [2, 8]]);
     20     },
     21     'cumprod matrix rows': function(jStat) {
     22       assert.deepEqual(jStat([[1, 2], [3, 4]]).cumprod(true), [[1, 2], [3, 12]]);
     23     }
     24   },
     25   '#cumprod vector': {
     26     'topic': function() {
     27       jStat([1, 2, 3]).cumprod(this.callback);
     28     },
     29     'cumprod callback': function(val, stat) {
     30       assert.deepEqual(val, [1, 2, 6]);
     31     }
     32   },
     33   '#cumprod matrix cols': {
     34     'topic': function() {
     35       jStat([[1, 2], [3, 4]]).cumprod(this.callback);
     36     },
     37     'cumprod matrix cols callback': function(val, stat) {
     38       assert.deepEqual(val, [[1, 3], [2, 8]]);
     39     }
     40   },
     41   '#cumprod matrix rows': {
     42     'topic': function() {
     43       jStat([[1, 2], [3, 4]]).cumprod(true, this.callback);
     44     },
     45     'cumprod matrix rows callback': function(val, stat) {
     46       assert.deepEqual(val, [[1, 2], [3, 12]]);
     47     }
     48   }
     49 });
     50 
     51 suite.export(module);