queryablejs
Advanced tools
Comparing version 0.0.21 to 0.0.22
@@ -38,3 +38,5 @@ "use strict"; | ||
var andExpression = new _OperationExpression2.default("and"); | ||
andExpression.children = Array.from(arguments); | ||
andExpression.children = Array.from(arguments).map(function (whereExpression) { | ||
return whereExpression.children[0]; | ||
}); | ||
@@ -47,3 +49,5 @@ return andExpression; | ||
var orExpression = new _OperationExpression2.default("or"); | ||
orExpression.children = Array.from(arguments); | ||
orExpression.children = Array.from(arguments).map(function (whereExpression) { | ||
return whereExpression.children[0]; | ||
}); | ||
@@ -50,0 +54,0 @@ return orExpression; |
@@ -136,2 +136,8 @@ "use strict"; | ||
if (whereExpression.nodeName !== "where") { | ||
var wrapper = new _OperationExpression2.default("where"); | ||
wrapper.children.push(whereExpression); | ||
whereExpression = wrapper; | ||
} | ||
if (query.where.children.length === 0) { | ||
@@ -138,0 +144,0 @@ query.where = whereExpression; |
@@ -56,2 +56,36 @@ "use strict"; | ||
exports["Queryable: Constructor with query (where: expressionBuilder.and)"] = function () { | ||
var queryable = new _Queryable2.default(); | ||
queryable = queryable.where(function (expBuilder) { | ||
return expBuilder.and(expBuilder.property("firstName").isEqualTo("Jared"), expBuilder.property("lastName").isEqualTo("Barnes")); | ||
}); | ||
var query = queryable.getQuery(); | ||
assert.equal("and", query.where.children[0].nodeName); | ||
assert.equal("isEqualTo", query.where.children[0].children[0].nodeName); | ||
assert.equal("firstName", query.where.children[0].children[0].children[0].children[1].value); | ||
assert.equal("Jared", query.where.children[0].children[0].children[1].value); | ||
assert.equal("isEqualTo", query.where.children[0].children[1].nodeName); | ||
assert.equal("lastName", query.where.children[0].children[1].children[0].children[1].value); | ||
assert.equal("Barnes", query.where.children[0].children[1].children[1].value); | ||
}; | ||
exports["Queryable: Constructor with query (where: expressionBuilder.or)"] = function () { | ||
var queryable = new _Queryable2.default(); | ||
queryable = queryable.where(function (expBuilder) { | ||
return expBuilder.or(expBuilder.property("firstName").isEqualTo("Jared"), expBuilder.property("lastName").isEqualTo("Barnes")); | ||
}); | ||
var query = queryable.getQuery(); | ||
assert.equal("or", query.where.children[0].nodeName); | ||
assert.equal("isEqualTo", query.where.children[0].children[0].nodeName); | ||
assert.equal("firstName", query.where.children[0].children[0].children[0].children[1].value); | ||
assert.equal("Jared", query.where.children[0].children[0].children[1].value); | ||
assert.equal("isEqualTo", query.where.children[0].children[1].nodeName); | ||
assert.equal("lastName", query.where.children[0].children[1].children[0].children[1].value); | ||
assert.equal("Barnes", query.where.children[0].children[1].children[1].value); | ||
}; | ||
exports["Queryable: Constructor with query (where: with ExpressionBuilder instance.)"] = function () { | ||
@@ -58,0 +92,0 @@ var expressionBuilder = new _ExpressionBuilder2.default(); |
{ | ||
"name": "queryablejs", | ||
"version": "0.0.21", | ||
"version": "0.0.22", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
@@ -16,3 +16,5 @@ import OperationExpressionBuilder from "./OperationExpressionBuilder"; | ||
let andExpression = new OperationExpression("and"); | ||
andExpression.children = Array.from(arguments); | ||
andExpression.children = Array.from(arguments).map((whereExpression)=>{ | ||
return whereExpression.children[0]; | ||
}); | ||
@@ -24,3 +26,5 @@ return andExpression; | ||
let orExpression = new OperationExpression("or"); | ||
orExpression.children = Array.from(arguments); | ||
orExpression.children = Array.from(arguments).map((whereExpression)=>{ | ||
return whereExpression.children[0]; | ||
}); | ||
@@ -27,0 +31,0 @@ return orExpression; |
@@ -94,2 +94,8 @@ import Expression from "./Expression"; | ||
if (whereExpression.nodeName !== "where") { | ||
let wrapper = new OperationExpression("where"); | ||
wrapper.children.push(whereExpression); | ||
whereExpression = wrapper; | ||
} | ||
if (query.where.children.length === 0) { | ||
@@ -96,0 +102,0 @@ query.where = whereExpression; |
@@ -44,2 +44,42 @@ import * as assert from "assert"; | ||
exports["Queryable: Constructor with query (where: expressionBuilder.and)"] = function() { | ||
let queryable = new Queryable(); | ||
queryable = queryable | ||
.where(expBuilder => { | ||
return expBuilder.and( | ||
expBuilder.property("firstName").isEqualTo("Jared"), | ||
expBuilder.property("lastName").isEqualTo("Barnes")); | ||
}); | ||
const query = queryable.getQuery(); | ||
assert.equal("and", query.where.children[0].nodeName); | ||
assert.equal("isEqualTo", query.where.children[0].children[0].nodeName); | ||
assert.equal("firstName", query.where.children[0].children[0].children[0].children[1].value); | ||
assert.equal("Jared", query.where.children[0].children[0].children[1].value); | ||
assert.equal("isEqualTo", query.where.children[0].children[1].nodeName); | ||
assert.equal("lastName", query.where.children[0].children[1].children[0].children[1].value); | ||
assert.equal("Barnes", query.where.children[0].children[1].children[1].value); | ||
} | ||
exports["Queryable: Constructor with query (where: expressionBuilder.or)"] = function() { | ||
let queryable = new Queryable(); | ||
queryable = queryable | ||
.where(expBuilder => { | ||
return expBuilder.or( | ||
expBuilder.property("firstName").isEqualTo("Jared"), | ||
expBuilder.property("lastName").isEqualTo("Barnes")); | ||
}); | ||
const query = queryable.getQuery(); | ||
assert.equal("or", query.where.children[0].nodeName); | ||
assert.equal("isEqualTo", query.where.children[0].children[0].nodeName); | ||
assert.equal("firstName", query.where.children[0].children[0].children[0].children[1].value); | ||
assert.equal("Jared", query.where.children[0].children[0].children[1].value); | ||
assert.equal("isEqualTo", query.where.children[0].children[1].nodeName); | ||
assert.equal("lastName", query.where.children[0].children[1].children[0].children[1].value); | ||
assert.equal("Barnes", query.where.children[0].children[1].children[1].value); | ||
} | ||
exports["Queryable: Constructor with query (where: with ExpressionBuilder instance.)"] = function () { | ||
@@ -46,0 +86,0 @@ const expressionBuilder = new ExpressionBuilder(); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
1676102
91
7971
1