time-to-botec

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

median-test.js (1295B)


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