mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-20 04:05:52 +00:00
79 lines
1.7 KiB
JavaScript
79 lines
1.7 KiB
JavaScript
var assert = require('assert');
|
|
var RangeSet = require('ripple-lib').RangeSet;
|
|
|
|
describe('RangeSet', function() {
|
|
it('add()', function() {
|
|
var r = new RangeSet();
|
|
|
|
r.add('4-5');
|
|
r.add('7-10');
|
|
r.add('1-2');
|
|
r.add('3');
|
|
|
|
assert.deepEqual(r._ranges, [
|
|
{ start: 1, end: 2 },
|
|
{ start: 3, end: 3 },
|
|
{ start: 4, end: 5 },
|
|
{ start: 7, end: 10 }
|
|
]);
|
|
});
|
|
|
|
it('add() -- malformed range', function() {
|
|
var r = new RangeSet();
|
|
|
|
assert.throws(function() {
|
|
r.add(null);
|
|
});
|
|
assert.throws(function() {
|
|
r.add(void(0));
|
|
});
|
|
assert.throws(function() {
|
|
r.add('a');
|
|
});
|
|
assert.throws(function() {
|
|
r.add('2-1');
|
|
});
|
|
});
|
|
|
|
it('contains()', function() {
|
|
var r = new RangeSet();
|
|
|
|
r.add('32570-11005146');
|
|
r.add('11005147');
|
|
|
|
assert.strictEqual(r.contains(1), false);
|
|
assert.strictEqual(r.contains(32569), false);
|
|
assert.strictEqual(r.contains(32570), true);
|
|
assert.strictEqual(r.contains('32570'), true);
|
|
assert.strictEqual(r.contains(50000), true);
|
|
assert.strictEqual(r.contains(11005146), true);
|
|
assert.strictEqual(r.contains(11005147), true);
|
|
assert.strictEqual(r.contains(11005148), false);
|
|
assert.strictEqual(r.contains(12000000), false);
|
|
});
|
|
|
|
it('contains() -- invalid ledger', function() {
|
|
var r = new RangeSet();
|
|
|
|
assert.throws(function() {
|
|
r.contains(null);
|
|
});
|
|
assert.throws(function() {
|
|
r.contains(void(0));
|
|
});
|
|
assert.throws(function() {
|
|
r.contains('a');
|
|
});
|
|
});
|
|
|
|
it('reset()', function() {
|
|
var r = new RangeSet();
|
|
|
|
r.add('4-5');
|
|
r.add('7-10');
|
|
r.reset();
|
|
|
|
assert.deepEqual(r._ranges, [ ]);
|
|
});
|
|
});
|