Init
This commit is contained in:
250
node_modules/cron-parser/test/field_compactor.js
generated
vendored
Normal file
250
node_modules/cron-parser/test/field_compactor.js
generated
vendored
Normal file
@ -0,0 +1,250 @@
|
||||
'use strict';
|
||||
|
||||
var test = require('tap').test;
|
||||
var compactField = require('../lib/field_compactor');
|
||||
|
||||
test('compact field - empty array', function(t) {
|
||||
try {
|
||||
var result = compactField([]);
|
||||
t.same(result, []);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - single element array', function(t) {
|
||||
try {
|
||||
var result = compactField([1]);
|
||||
t.same(result, [{
|
||||
start: 1,
|
||||
count: 1
|
||||
}]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 2 elements array', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 2,
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 2 elements array big step', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 5]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 5,
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 3 elements array 1 step', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2, 3]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
end: 3,
|
||||
count: 3,
|
||||
step: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 3 elements array 1 step, dangling extra at end', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2, 3, 5]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
end: 3,
|
||||
count: 3,
|
||||
step: 1
|
||||
},
|
||||
{
|
||||
start: 5,
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 3 elements array 1 step, dangling extra at end and beginning', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 4, 5, 6, 9]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 4,
|
||||
end: 6,
|
||||
count: 3,
|
||||
step: 1
|
||||
},
|
||||
{
|
||||
start: 9,
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - 2 ranges with dangling in the middle', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2, 3, 6, 9, 11, 13]);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
end: 3,
|
||||
count: 3,
|
||||
step: 1
|
||||
},
|
||||
{
|
||||
start: 6,
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 9,
|
||||
end: 13,
|
||||
count: 3,
|
||||
step: 2
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - with chars', function(t) {
|
||||
try {
|
||||
var result = compactField(['L', 'W']);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 'L',
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 'W',
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - with chars and range', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 'L', 'W']);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
count: 1,
|
||||
},
|
||||
{
|
||||
start: 'L',
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 'W',
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('compact field - with chars and range (v2)', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2, 'L', 'W']);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
count: 1,
|
||||
},
|
||||
{
|
||||
start: 2,
|
||||
count: 1,
|
||||
},
|
||||
{
|
||||
start: 'L',
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 'W',
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
||||
|
||||
test('compact field - with chars and range (v3)', function(t) {
|
||||
try {
|
||||
var result = compactField([1, 2, 3, 'L', 'W']);
|
||||
t.same(result, [
|
||||
{
|
||||
start: 1,
|
||||
end: 3,
|
||||
count: 3,
|
||||
step: 1
|
||||
},
|
||||
{
|
||||
start: 'L',
|
||||
count: 1
|
||||
},
|
||||
{
|
||||
start: 'W',
|
||||
count: 1
|
||||
}
|
||||
]);
|
||||
} catch (err) {
|
||||
t.error(err, 'compact field error');
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
Reference in New Issue
Block a user