cleanup
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -20,3 +20,5 @@ reviews/db/test.db
|
|||||||
*.openapi3.json
|
*.openapi3.json
|
||||||
*.sqlite
|
*.sqlite
|
||||||
*.db
|
*.db
|
||||||
|
|
||||||
|
**/@types
|
||||||
|
|||||||
@@ -2,11 +2,10 @@ describe('cds.ql → cqn', () => {
|
|||||||
|
|
||||||
const cds = require('@sap/cds/lib')
|
const cds = require('@sap/cds/lib')
|
||||||
const { expect } = cds.test
|
const { expect } = cds.test
|
||||||
const { cdr } = cds.ql
|
|
||||||
const Foo = { name: 'Foo' }
|
const Foo = { name: 'Foo' }
|
||||||
const Books = { name: 'capire.bookshop.Books' }
|
const Books = { name: 'capire.bookshop.Books' }
|
||||||
|
|
||||||
const STAR = cdr ? '*' : { ref: ['*'] }
|
const STAR = '*'
|
||||||
const skip = {to:{eql:()=>skip}}
|
const skip = {to:{eql:()=>skip}}
|
||||||
const srv = new cds.Service
|
const srv = new cds.Service
|
||||||
let cqn
|
let cqn
|
||||||
@@ -185,7 +184,7 @@ describe('cds.ql → cqn', () => {
|
|||||||
}},
|
}},
|
||||||
})
|
})
|
||||||
|
|
||||||
if (cdr) expect.plain (cqn)
|
expect.plain (cqn)
|
||||||
.to.eql(SELECT`Foo[ID=${11}]`)
|
.to.eql(SELECT`Foo[ID=${11}]`)
|
||||||
.to.eql(srv.read`Foo[ID=${11}]`)
|
.to.eql(srv.read`Foo[ID=${11}]`)
|
||||||
|
|
||||||
@@ -242,7 +241,7 @@ describe('cds.ql → cqn', () => {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
cdr && expect.plain(cqn)
|
expect.plain(cqn)
|
||||||
.to.eql(CQL`SELECT *,a,b as c from Foo`)
|
.to.eql(CQL`SELECT *,a,b as c from Foo`)
|
||||||
.to.eql(CQL`SELECT from Foo {*,a,b as c}`)
|
.to.eql(CQL`SELECT from Foo {*,a,b as c}`)
|
||||||
|
|
||||||
@@ -341,7 +340,7 @@ describe('cds.ql → cqn', () => {
|
|||||||
expect(SELECT.from(Foo).where({ x: 1, and: { y: 2, or: { z: 3 } } })).to.eql({
|
expect(SELECT.from(Foo).where({ x: 1, and: { y: 2, or: { z: 3 } } })).to.eql({
|
||||||
SELECT: {
|
SELECT: {
|
||||||
from: { ref: ['Foo'] },
|
from: { ref: ['Foo'] },
|
||||||
where: cdr ? [
|
where: [
|
||||||
{ ref: ['x'] },
|
{ ref: ['x'] },
|
||||||
'=',
|
'=',
|
||||||
{ val: 1 },
|
{ val: 1 },
|
||||||
@@ -357,29 +356,12 @@ describe('cds.ql → cqn', () => {
|
|||||||
{ val: 3 },
|
{ val: 3 },
|
||||||
]},
|
]},
|
||||||
// ')',
|
// ')',
|
||||||
] : [
|
|
||||||
{ ref: ['x'] },
|
|
||||||
'=',
|
|
||||||
{ val: 1 },
|
|
||||||
'and',
|
|
||||||
'(',
|
|
||||||
// {xpr:[
|
|
||||||
{ ref: ['y'] },
|
|
||||||
'=',
|
|
||||||
{ val: 2 },
|
|
||||||
'or',
|
|
||||||
{ ref: ['z'] },
|
|
||||||
'=',
|
|
||||||
{ val: 3 },
|
|
||||||
// ]},
|
|
||||||
')',
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
test ("where x='*'", ()=>{
|
test ("where x='*'", ()=>{
|
||||||
if (cdr)
|
|
||||||
expect (SELECT.from(Foo).where({x:'*'}))
|
expect (SELECT.from(Foo).where({x:'*'}))
|
||||||
.to.eql(SELECT.from(Foo).where("x='*'"))
|
.to.eql(SELECT.from(Foo).where("x='*'"))
|
||||||
.to.eql(SELECT.from(Foo).where("x=",'*'))
|
.to.eql(SELECT.from(Foo).where("x=",'*'))
|
||||||
@@ -387,7 +369,6 @@ describe('cds.ql → cqn', () => {
|
|||||||
.to.eql(
|
.to.eql(
|
||||||
CQL`SELECT from Foo where x='*'`
|
CQL`SELECT from Foo where x='*'`
|
||||||
)
|
)
|
||||||
if (cdr)
|
|
||||||
expect (SELECT.from(Foo).where({x:['*',1]}))
|
expect (SELECT.from(Foo).where({x:['*',1]}))
|
||||||
.to.eql(SELECT.from(Foo).where("x in ('*',1)"))
|
.to.eql(SELECT.from(Foo).where("x in ('*',1)"))
|
||||||
.to.eql(SELECT.from(Foo).where("x in",['*',1]))
|
.to.eql(SELECT.from(Foo).where("x in",['*',1]))
|
||||||
@@ -479,19 +460,19 @@ describe('cds.ql → cqn', () => {
|
|||||||
CQL`SELECT from Foo where x=1 and y=2 or z=3`
|
CQL`SELECT from Foo where x=1 and y=2 or z=3`
|
||||||
)
|
)
|
||||||
|
|
||||||
if (cdr) expect (
|
expect (
|
||||||
SELECT.from(Foo).where({x:1}).and({y:2,or:{z:3}})
|
SELECT.from(Foo).where({x:1}).and({y:2,or:{z:3}})
|
||||||
).to.eql (
|
).to.eql (
|
||||||
CQL`SELECT from Foo where x=1 and ( y=2 or z=3 )`
|
CQL`SELECT from Foo where x=1 and ( y=2 or z=3 )`
|
||||||
)
|
)
|
||||||
|
|
||||||
if (cdr) expect (
|
expect (
|
||||||
SELECT.from(Foo).where({1:1}).and({x:1,or:{x:2}}).and({y:2,or:{z:3}})
|
SELECT.from(Foo).where({1:1}).and({x:1,or:{x:2}}).and({y:2,or:{z:3}})
|
||||||
).to.eql (
|
).to.eql (
|
||||||
CQL`SELECT from Foo where 1=1 and ( x=1 or x=2 ) and ( y=2 or z=3 )`
|
CQL`SELECT from Foo where 1=1 and ( x=1 or x=2 ) and ( y=2 or z=3 )`
|
||||||
)
|
)
|
||||||
|
|
||||||
if (cdr) expect (
|
expect (
|
||||||
SELECT.from(Foo).where({x:1,or:{x:2}}).and({y:2,or:{z:3}})
|
SELECT.from(Foo).where({x:1,or:{x:2}}).and({y:2,or:{z:3}})
|
||||||
).to.eql (
|
).to.eql (
|
||||||
CQL`SELECT from Foo where ( x=1 or x=2 ) and ( y=2 or z=3 )`
|
CQL`SELECT from Foo where ( x=1 or x=2 ) and ( y=2 or z=3 )`
|
||||||
@@ -499,7 +480,7 @@ describe('cds.ql → cqn', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
test('where ({x:[undefined]})', () => {
|
test('where ({x:[undefined]})', () => {
|
||||||
if (cdr) expect (
|
expect (
|
||||||
SELECT.from(Foo).where({x:[undefined]})
|
SELECT.from(Foo).where({x:[undefined]})
|
||||||
).to.eql ({ SELECT: {
|
).to.eql ({ SELECT: {
|
||||||
from: {ref:['Foo']},
|
from: {ref:['Foo']},
|
||||||
@@ -526,7 +507,7 @@ describe('cds.ql → cqn', () => {
|
|||||||
).to.eql({
|
).to.eql({
|
||||||
SELECT: {
|
SELECT: {
|
||||||
from: { ref: ['Foo'] },
|
from: { ref: ['Foo'] },
|
||||||
where: cdr ? [
|
where: [
|
||||||
{ ref: ['ID'] },
|
{ ref: ['ID'] },
|
||||||
'=',
|
'=',
|
||||||
{ val: ID },
|
{ val: ID },
|
||||||
@@ -546,24 +527,6 @@ describe('cds.ql → cqn', () => {
|
|||||||
{ val: 9 },
|
{ val: 9 },
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
] : [
|
|
||||||
{ ref: ['ID'] },
|
|
||||||
'=',
|
|
||||||
{ val: ID },
|
|
||||||
'and',
|
|
||||||
{ ref: ['args'] },
|
|
||||||
'in',
|
|
||||||
{ list: args.map(val => ({ val })) },
|
|
||||||
'and',
|
|
||||||
'(',
|
|
||||||
{ ref: ['x'] },
|
|
||||||
'like',
|
|
||||||
{ val: '%x%' },
|
|
||||||
'or',
|
|
||||||
{ ref: ['y'] },
|
|
||||||
'>=',
|
|
||||||
{ val: 9 },
|
|
||||||
')',
|
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -657,7 +620,6 @@ describe('cds.ql → cqn', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
it('should consistently handle *', () => {
|
it('should consistently handle *', () => {
|
||||||
if (!cdr) return
|
|
||||||
expect({
|
expect({
|
||||||
SELECT: { from: { ref: ['Foo'] }, columns: ['*'] },
|
SELECT: { from: { ref: ['Foo'] }, columns: ['*'] },
|
||||||
})
|
})
|
||||||
@@ -668,7 +630,6 @@ describe('cds.ql → cqn', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
it('should consistently handle lists', () => {
|
it('should consistently handle lists', () => {
|
||||||
if (!cdr) return
|
|
||||||
const ID = 11, args = [{ref:['foo']}, "bar", 3]
|
const ID = 11, args = [{ref:['foo']}, "bar", 3]
|
||||||
const cqn = CQL`SELECT from Foo where ID=11 and x in (foo,'bar',3)`
|
const cqn = CQL`SELECT from Foo where ID=11 and x in (foo,'bar',3)`
|
||||||
expect(SELECT.from(Foo).where`ID=${ID} and x in ${args}`).to.eql(cqn)
|
expect(SELECT.from(Foo).where`ID=${ID} and x in ${args}`).to.eql(cqn)
|
||||||
|
|||||||
Reference in New Issue
Block a user