all files / utils/formatter/ formatter.mocha.js

100% Statements 25/25
100% Branches 0/0
100% Functions 8/8
100% Lines 25/25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35                   
"use strict";
var chai_1 = require('chai');
var formatter_1 = require('./formatter');
describe('General', function () {
    describe('getMiddleNumber', function () {
        it('works in simple case', function () {
            var values = [100, 10, 1, 0];
            chai_1.expect(formatter_1.getMiddleNumber(values)).to.equal(10);
        });
        it('works in more complex case', function () {
            var values = [0, 0, -1000, -100, 10, 1, 0, 0, 0, 0];
            chai_1.expect(formatter_1.getMiddleNumber(values)).to.equal(10);
        });
    });
    describe('formatterFromData', function () {
        it('works in simple case', function () {
            var values = [100, 10, 1, 0];
            var formatter = formatter_1.formatterFromData(values, '0,0 a');
            chai_1.expect(formatter(10)).to.equal('10');
        });
        it('works in k case', function () {
            var values = [50000, 5000, 5000, 5000, 5000, 100, 10, 1, 0];
            var formatter = formatter_1.formatterFromData(values, '0,0.000 a');
            chai_1.expect(formatter(10)).to.equal('0.010 k');
            chai_1.expect(formatter(12345)).to.equal('12.345 k');
        });
        it('works in KB case', function () {
            var values = [50000, 5000, 5000, 5000, 5000, 100, 10, 1, 0];
            var formatter = formatter_1.formatterFromData(values, '0,0.000 b');
            chai_1.expect(formatter(10)).to.equal('0.010 KB');
            chai_1.expect(formatter(12345)).to.equal('12.056 KB');
        });
    });
});