This commit is contained in:
Adam Dubiel 2014-10-27 13:27:07 +01:00
Родитель 5e56e42ee5
Коммит 8ddd61b34d
2 изменённых файлов: 12 добавлений и 2 удалений

Просмотреть файл

@ -11,6 +11,15 @@ function isNumber(str) {
return Boolean(str && !isNaN(str));
}
function isValidSampleRate(str) {
var validSampleRate = false;
if(str.length > 1 && str[0] === '@') {
var numberStr = str.substring(1);
validSampleRate = isNumber(numberStr) && numberStr[0] != '-';
}
return validSampleRate;
}
function is_valid_packet(fields) {
// test for existing metrics type
@ -20,7 +29,7 @@ function is_valid_packet(fields) {
// filter out malformed sample rates
if(fields[2] !== undefined) {
if (fields[2].length <= 1 || fields[2][0] != '@' || !isNumber(fields[2].substring(1))) {
if(!isValidSampleRate(fields[2])) {
return false;
}
}

Просмотреть файл

@ -112,6 +112,7 @@ module.exports = {
test.equals(helpers.is_valid_packet(['345345', 'ms', '@.']), false);
test.equals(helpers.is_valid_packet(['345345', 'ms', '@.1.']), false);
test.equals(helpers.is_valid_packet(['345345', 'ms', '@.1.2.3']), false);
test.equals(helpers.is_valid_packet(['345345', 'ms', '@-1.0']), false);
test.done();
},