Skip to content

Commit

Permalink
órden y warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
diegoefe committed Dec 20, 2016
1 parent 97b1129 commit ebe9178
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 33 deletions.
27 changes: 12 additions & 15 deletions lib/txt-to-sql.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,6 @@ function filling(columnLength, val) { return val.length>=columnLength?'':new Arr
function padLeft(columnLength, val) { return val+filling(columnLength, val); }
function padRight(columnLength, val) { return filling(columnLength,val)+val; }

function evaluateColumn(column, rows, regex) {
for(var row=0; row<rows.length; ++row) {
if(rows[row][column] && ! rows[row][column].match(regex)) {
return false;
}
}
return true;
}
var booleanRegExps = [
{t:/^1$/, f:/^0$/},
{t:/^1$/, f:/^2$/},
Expand All @@ -49,23 +41,28 @@ function isBoolean(column, rows) {
if(vals.length>2) { return false; }
}
}
if(vals.length==2) {
if(vals.length===2) {
return booleanRegExps.some(function(rgx) {
//console.log("vals", vals, '->', rgx)
//console.log(' ',vals[0], vals[0].match(rgx.t)?"OK":"nop")
//console.log(' ',vals[1], vals[1].match(rgx.f)?"OK":"nop")
return (vals[0].match(rgx.t) && vals[1].match(rgx.f))
|| (vals[1].match(rgx.t) && vals[0].match(rgx.f));
return (vals[0].match(rgx.t) && vals[1].match(rgx.f)) ||
(vals[1].match(rgx.t) && vals[0].match(rgx.f));
});
} else {
return vals.some(function(val) {
return booleanRegExps.some(function(rgx) {
return val.match(rgx.f) || val.match(rgx.t)
return val.match(rgx.f) || val.match(rgx.t);
});
});
}
}

function evaluateColumn(column, rows, regex) {
for(var row=0; row<rows.length; ++row) {
if(rows[row][column] && ! rows[row][column].match(regex)) {
return false;
}
}
return true;
}
function isInteger(column, rows) {
return evaluateColumn(column, rows, /^-?[0-9]{1,5}$/);
}
Expand Down
8 changes: 5 additions & 3 deletions test/test.js
Original file line number Diff line number Diff line change
Expand Up @@ -289,16 +289,18 @@ describe("datatype validation", function(){
var b = txtToSql.typeValidations['boolean'].checkArray;
expect(b1('null')).to.be.ok(); // coverage
expect(b1('')).to.not.be.ok(); // coverage
// good
expect(b(0, [['1'],['1'],['0'],['1']])).to.be.ok();
// good, 1 value
expect(b(0, [['uno']])).to.be.ok();
expect(b(0, [[''],['uno']])).to.be.ok();
expect(b(0, [['true'],['true'],['true']])).to.be.ok();
expect(b(0, [['pi'],['pi'],['pi']])).to.be.ok();
// good, 2 values
expect(b(0, [['1'],['1'],['0'],['1']])).to.be.ok();
expect(b(0, [['1'],['0'],[''],['0'],['1']])).to.be.ok();
expect(b(0, [[''],['1'],['0'],['0'],['1'],['']])).to.be.ok();
expect(b(0, [['1'],['2'],['2'],['1'],['']])).to.be.ok();
expect(b(0, [['si'],['si']])).to.be.ok();
expect(b(0, [['no'],['no'],['si'],['no'],['si']])).to.be.ok();
expect(b(0, [['true'],['true'],['true']])).to.be.ok();
expect(b(0, [['true'],['true'],['false']])).to.be.ok();
// bad
expect(b(0, [['3'],['1'],['0']])).to.not.be.ok();
Expand Down
27 changes: 12 additions & 15 deletions web/txt-to-sql.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,6 @@ function filling(columnLength, val) { return val.length>=columnLength?'':new Arr
function padLeft(columnLength, val) { return val+filling(columnLength, val); }
function padRight(columnLength, val) { return filling(columnLength,val)+val; }

function evaluateColumn(column, rows, regex) {
for(var row=0; row<rows.length; ++row) {
if(rows[row][column] && ! rows[row][column].match(regex)) {
return false;
}
}
return true;
}
var booleanRegExps = [
{t:/^1$/, f:/^0$/},
{t:/^1$/, f:/^2$/},
Expand All @@ -49,23 +41,28 @@ function isBoolean(column, rows) {
if(vals.length>2) { return false; }
}
}
if(vals.length==2) {
if(vals.length===2) {
return booleanRegExps.some(function(rgx) {
//console.log("vals", vals, '->', rgx)
//console.log(' ',vals[0], vals[0].match(rgx.t)?"OK":"nop")
//console.log(' ',vals[1], vals[1].match(rgx.f)?"OK":"nop")
return (vals[0].match(rgx.t) && vals[1].match(rgx.f))
|| (vals[1].match(rgx.t) && vals[0].match(rgx.f));
return (vals[0].match(rgx.t) && vals[1].match(rgx.f)) ||
(vals[1].match(rgx.t) && vals[0].match(rgx.f));
});
} else {
return vals.some(function(val) {
return booleanRegExps.some(function(rgx) {
return val.match(rgx.f) || val.match(rgx.t)
return val.match(rgx.f) || val.match(rgx.t);
});
});
}
}

function evaluateColumn(column, rows, regex) {
for(var row=0; row<rows.length; ++row) {
if(rows[row][column] && ! rows[row][column].match(regex)) {
return false;
}
}
return true;
}
function isInteger(column, rows) {
return evaluateColumn(column, rows, /^-?[0-9]{1,5}$/);
}
Expand Down

0 comments on commit ebe9178

Please sign in to comment.