all files / src/ parserLib.js

93.1% Statements 27/29
50% Branches 6/12
85.71% Functions 6/7
93.1% Lines 27/29
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 36 37 38 39 40 41 42 43 44 45 20×         14× 14× 14×                            
let isOption = function (option) {
  return option.substring(0,1)=='-';
}
 
let isVerbose = function (option) {
  return option.substring(0,2)=='--';
}
 
let getNumberPartFromString = function (inputString) {
  let numberArray = inputString.match(/[0-9]+/g);
  let result = (Array.isArray(numberArray)&&numberArray.length>0)?numberArray[numberArray.length-1]:false;
  return result;
}
 
let getTextPartFromString = function (inputString) {
  let textArray = inputString.match(/([a-z])/ig);
  let result = (Array.isArray(textArray))?textArray:false;
  return result;
}
 
let getNumberAndTextFromString = function (inputString) {
  let resultObj ={};
  resultObj.number = getNumberPartFromString(inputString);
  resultObj.text= getTextPartFromString(inputString);
  return resultObj;
}
 
let doesOptionContainValue =  function (option) {
  return getNumberPartFromString(option)&&true;
}
 
let doesItContainMultipleOptions = function (option) {
  let textPart =getTextPartFromString(option) ||false;
 
  return textPart && textPart.length>1;
}
 
exports.getTextPartFromString=getTextPartFromString;
exports.getNumberAndTextFromString=getNumberAndTextFromString;
exports.getNumberPartFromString=getNumberPartFromString;
exports.doesItContainMultipleOptions=doesItContainMultipleOptions;
exports.doesOptionContainValue = doesOptionContainValue;
exports.isOption=isOption;
exports.isVerbose=isVerbose;