UNPKG

@spalger/kibana

Version:

Kibana is an open source (Apache Licensed), browser based analytics and search dashboard for Elasticsearch. Kibana is a snap to setup and start using. Kibana strives to be easy to get started with, while also being flexible and powerful, just like Elastic

111 lines (94 loc) 2.41 kB
var moment = require('moment'); var ngMock = require('ngMock'); var expect = require('expect.js'); describe('Diff Time Picker Values', function () { var diffTimePickerValues; beforeEach(ngMock.module('kibana')); beforeEach(ngMock.inject(function (Private) { diffTimePickerValues = Private(require('ui/utils/diff_time_picker_vals')); })); it('accepts two undefined values', function () { var diff = diffTimePickerValues(undefined, undefined); expect(diff).to.be(false); }); describe('dateMath ranges', function () { it('knows a match', function () { var diff = diffTimePickerValues( { to: 'now', from: 'now-7d' }, { to: 'now', from: 'now-7d' } ); expect(diff).to.be(false); }); it('knows a difference', function () { var diff = diffTimePickerValues( { to: 'now', from: 'now-7d' }, { to: 'now', from: 'now-1h' } ); expect(diff).to.be(true); }); }); describe('a dateMath range, and a moment range', function () { it('is always different', function () { var diff = diffTimePickerValues( { to: moment(), from: moment() }, { to: 'now', from: 'now-1h' } ); expect(diff).to.be(true); }); }); describe('moment ranges', function () { it('uses the time value of moments for comparison', function () { var to = moment(); var from = moment().add(1, 'day'); var diff = diffTimePickerValues( { to: to.clone(), from: from.clone() }, { to: to.clone(), from: from.clone() } ); expect(diff).to.be(false); }); it('fails if any to or from is different', function () { var to = moment(); var from = moment().add(1, 'day'); var from2 = moment().add(2, 'day'); var diff = diffTimePickerValues( { to: to.clone(), from: from.clone() }, { to: to.clone(), from: from2.clone() } ); expect(diff).to.be(true); }); }); it('does not fall apart with unusual values', function () { var diff = diffTimePickerValues({}, {}); expect(diff).to.be(false); }); });