diff --git a/fiori/package.json b/fiori/package.json index 5ea647c1..6f3cf181 100644 --- a/fiori/package.json +++ b/fiori/package.json @@ -4,7 +4,7 @@ "dependencies": { "@capire/bookstore": "*", "@sap/cds": ">=5", - "@sap/cds-odata-v2-adapter-proxy": "^1.8.13", + "@sap/cds-odata-v2-adapter-proxy": "^1.9.0", "express": "^4.17.1", "passport": ">=0.4.1" }, diff --git a/fiori/server.js b/fiori/server.js index 1679d4a5..70cf701b 100644 --- a/fiori/server.js +++ b/fiori/server.js @@ -1,5 +1,8 @@ -const cds = require("@sap/cds"); -const proxy = require("@sap/cds-odata-v2-adapter-proxy"); -cds.on("bootstrap", app => app.use(proxy())); +const cds = require("@sap/cds") + +// install OData v2 adapter +const proxy = require('@sap/cds-odata-v2-adapter-proxy') +const proxyOpts = global.it ? { target:'auto' } : {} // for tests, set 'auto' to detect port dynamically +cds.on('bootstrap', app => app.use(proxy(proxyOpts))) module.exports = require('@capire/bookstore/server.js') \ No newline at end of file diff --git a/test/fiori.test.js b/test/fiori.test.js index 21360b28..42d6f0ff 100644 --- a/test/fiori.test.js +++ b/test/fiori.test.js @@ -2,8 +2,7 @@ const cds = require('@sap/cds/lib') const { GET, expect, axios } = cds.test ('@capire/fiori', '--with-mocks') axios.defaults.auth = { username: 'alice', password: 'admin' } -// TODO enable if proxy-adapter 1.9 is out w/ support for ephemeral ports for testing -describe.skip('cap/samples - Fiori APIs', () => { +describe('cap/samples - Fiori APIs - v2', () => { it('serves $metadata documents in v2', async () => { const { headers, data } = await GET `/v2/browse/$metadata` @@ -14,5 +13,10 @@ describe.skip('cap/samples - Fiori APIs', () => { expect(data).to.contain('') }) + it('serves Books in v2', async () => { + const { data } = await GET `/v2/browse/Books` + expect(data).to.containSubset({d:{results:[]}}) + expect(data.d.results.length).to.be.greaterThanOrEqual(5) + }) })