From c379ad41a6a0b53c440661b3524399c15aa361c3 Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 6 Oct 2019 21:08:09 +0800 Subject: [PATCH 01/13] jsonql-resolver to 0.9.1 --- packages/contract-cli/src/generator/split-task.js | 2 +- packages/resolver/package.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/contract-cli/src/generator/split-task.js b/packages/contract-cli/src/generator/split-task.js index 59524c23..07deeeb8 100644 --- a/packages/contract-cli/src/generator/split-task.js +++ b/packages/contract-cli/src/generator/split-task.js @@ -73,7 +73,7 @@ function createTask(slots, taskPath, payloads, returnType = true) { * @param {array} payload array of payload * @return {promise} resolve the final result */ -function splitTask(taskName, payload) { +function splitTask(config, payload) { return Promise.resolve(false) diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 9bfc5c2d..8ffa8a73 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-resolver", - "version": "0.9.0", + "version": "0.9.1", "description": "This is NOT for general use, please do not install it directly. This module is part of the jsonql tools supporting modules.", "main": "index.js", "files": [ @@ -36,7 +36,7 @@ }, "devDependencies": { "ava": "^2.4.0", - "jsonql-contract": "^1.7.19", + "jsonql-contract": "^1.7.20", "jsonql-koa": "^1.3.9", "server-io-core": "^1.2.0" }, -- Gitee From 1f0e255e13190fa98e9088ca47511eb51c7f6fc9 Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 6 Oct 2019 21:16:37 +0800 Subject: [PATCH 02/13] now we got a es6 handler problem --- packages/koa/package.json | 6 +++--- packages/koa/tests/es6-module.test.js | 1 + .../tests/{node-client._test_.js => node-client.test.js} | 0 3 files changed, 4 insertions(+), 3 deletions(-) rename packages/koa/tests/{node-client._test_.js => node-client.test.js} (100%) diff --git a/packages/koa/package.json b/packages/koa/package.json index e489d335..42a172c6 100644 --- a/packages/koa/package.json +++ b/packages/koa/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-koa", - "version": "1.3.10", + "version": "1.3.11", "description": "jsonql Koa middleware", "main": "main.js", "module": "index.js", @@ -72,12 +72,12 @@ "esm": "^3.2.25", "fs-extra": "^8.1.0", "jsonql-constants": "^1.8.3", - "jsonql-contract": "^1.7.16", + "jsonql-contract": "^1.7.20", "jsonql-errors": "^1.1.3", "jsonql-jwt": "^1.3.2", "jsonql-node-client": "^1.1.9", "jsonql-params-validator": "^1.4.11", - "jsonql-resolver": "^0.8.7", + "jsonql-resolver": "^0.9.1", "jsonql-utils": "^0.6.12", "jsonql-web-console": "^0.4.3", "koa": "^2.8.2", diff --git a/packages/koa/tests/es6-module.test.js b/packages/koa/tests/es6-module.test.js index a5dbcf0d..927245da 100644 --- a/packages/koa/tests/es6-module.test.js +++ b/packages/koa/tests/es6-module.test.js @@ -53,6 +53,7 @@ test('It should able to handle a ES6 function', async t => { createQuery('getSomething') ) t.is(200, res.status) + // @BUG the result is undefined t.true(Array.isArray(res.body.data)) diff --git a/packages/koa/tests/node-client._test_.js b/packages/koa/tests/node-client.test.js similarity index 100% rename from packages/koa/tests/node-client._test_.js rename to packages/koa/tests/node-client.test.js -- Gitee From 25bbcb87e409379f3c9f1de05f9a1716a8e7337c Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 6 Oct 2019 21:25:28 +0800 Subject: [PATCH 03/13] missing dependency error for jsonql-resolver --- packages/koa/package.json | 2 +- packages/resolver/package.json | 2 +- packages/resolver/src/search-resolvers.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/koa/package.json b/packages/koa/package.json index 42a172c6..03cdf6a4 100644 --- a/packages/koa/package.json +++ b/packages/koa/package.json @@ -17,7 +17,7 @@ "coverage": "nyc ava --verbose", "test:basic": "DEBUG=jsonql* ava ./tests/koa.test.js", "test:notfound": "DEBUG=jsonql-koa* ava --verbose ./tests/resolverNotFound.test.js", - "test:es6": "DEBUG=jsonql-koa* ava --verbose ./tests/es6-module.test.js", + "test:es6": "DEBUG=jsonql-* ava --verbose ./tests/es6-module.test.js", "test:jwt": "DEBUG=jsonql-koa*,jsonql-jwt* ava ./tests/jwt.test.js", "test:jwt-auth": "DEBUG=jsonql-koa* ava ./tests/jwt-auth.test.js", "test:fail": "ava ./tests/fail.test.js", diff --git a/packages/resolver/package.json b/packages/resolver/package.json index 8ffa8a73..beabb3d5 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-resolver", - "version": "0.9.1", + "version": "0.9.2", "description": "This is NOT for general use, please do not install it directly. This module is part of the jsonql tools supporting modules.", "main": "index.js", "files": [ diff --git a/packages/resolver/src/search-resolvers.js b/packages/resolver/src/search-resolvers.js index 38521f6a..172f4a3b 100644 --- a/packages/resolver/src/search-resolvers.js +++ b/packages/resolver/src/search-resolvers.js @@ -1,5 +1,5 @@ // search for the resolver location -// const { join } = require('path') +const { join } = require('path') const { JsonqlResolverNotFoundError } = require('jsonql-errors') const { getPathToFn, findFromContract } = require('jsonql-utils') -- Gitee From 5152e21907e0209813c9afcad58ed281b090bbeb Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 6 Oct 2019 21:28:09 +0800 Subject: [PATCH 04/13] there is a potential bug when there is an contract but without the import.js then it will failed --- packages/koa/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/koa/package.json b/packages/koa/package.json index 03cdf6a4..9d1f6ce2 100644 --- a/packages/koa/package.json +++ b/packages/koa/package.json @@ -77,7 +77,7 @@ "jsonql-jwt": "^1.3.2", "jsonql-node-client": "^1.1.9", "jsonql-params-validator": "^1.4.11", - "jsonql-resolver": "^0.9.1", + "jsonql-resolver": "^0.9.2", "jsonql-utils": "^0.6.12", "jsonql-web-console": "^0.4.3", "koa": "^2.8.2", -- Gitee From 74aad1ee11e536be5c501579d5365f18bb773065 Mon Sep 17 00:00:00 2001 From: joelchu Date: Sun, 6 Oct 2019 22:17:08 +0800 Subject: [PATCH 05/13] The JsonqlResolverAppError is fixed --- packages/koa/tests/resolverNotFound.test.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/koa/tests/resolverNotFound.test.js b/packages/koa/tests/resolverNotFound.test.js index 4412f27e..2cd96953 100644 --- a/packages/koa/tests/resolverNotFound.test.js +++ b/packages/koa/tests/resolverNotFound.test.js @@ -31,7 +31,7 @@ test('it should throw a ResolverNotFoundError', async (t) => { t.is(res.body.error.statusCode, 404) }) -// @BUG need fixing +// @BUG need fixing test("It should cause an Application error but nothing throw", async t => { let res = await superkoa(t.context.app) .post('/jsonql') @@ -46,4 +46,6 @@ test("It should cause an Application error but nothing throw", async t => { t.is(true, res.status === 200) + t.is('JsonqlResolverAppError', res.body.error.className) + }) -- Gitee From 84f37e5ca580f94d386cb07d86b95af41985607f Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:01:59 +0800 Subject: [PATCH 06/13] disable the client test and remap the whole thing --- packages/koa/tests/node-client.test.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/koa/tests/node-client.test.js b/packages/koa/tests/node-client.test.js index c749becf..d4a8ee7c 100644 --- a/packages/koa/tests/node-client.test.js +++ b/packages/koa/tests/node-client.test.js @@ -49,7 +49,7 @@ test.skip(`First test both server is running`, async t => { t.is(res2.status, 200) }) -test.skip(`First test calling the 6001 directly with the mutation call`, async t => { +test.skip(`First test calling the ${port} directly with the mutation call`, async t => { const client = await nodeClient({ hostname: `http://localhost:${msPort}`, contractDir: join(__dirname, 'fixtures', 'tmp', `client${msPort}`) @@ -58,13 +58,15 @@ test.skip(`First test calling the 6001 directly with the mutation call`, async t t.truthy(result.indexOf(`ms service`)) }) -test(`It should able to call a resolver that access another ms`, async t => { +test.skip(`It should able to call a resolver that access another ms`, async t => { // the problem now is calling the 6001 but received the 8001 public contract? const client = await nodeClient({ hostname: `http://localhost:${port}`, contractDir: clientContractDir }) - const result = await client.mutation.updateMsService('testing') + debug(client) + + const result = await client.mutation.subUpdateMsService('testing') t.truthy(result.indexOf(`ms service`)) }) -- Gitee From 2d4e696d3bbadfe34248edee9a38f96b195dcedb Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:03:10 +0800 Subject: [PATCH 07/13] copy the ms folder from koa to resolver to test out the new es6 import method --- .../tests/fixtures/es/mutation/save-something.js | 9 +++++++++ .../resolver/tests/fixtures/es/query/get-something.js | 8 ++++++++ 2 files changed, 17 insertions(+) create mode 100644 packages/resolver/tests/fixtures/es/mutation/save-something.js create mode 100644 packages/resolver/tests/fixtures/es/query/get-something.js diff --git a/packages/resolver/tests/fixtures/es/mutation/save-something.js b/packages/resolver/tests/fixtures/es/mutation/save-something.js new file mode 100644 index 00000000..ea30ca67 --- /dev/null +++ b/packages/resolver/tests/fixtures/es/mutation/save-something.js @@ -0,0 +1,9 @@ + +/** + * @param {object} payload + * @param {object} condition + * @return {boolean} true on OK + */ +export default function saveSomething(payload, condition) { + return true; +} diff --git a/packages/resolver/tests/fixtures/es/query/get-something.js b/packages/resolver/tests/fixtures/es/query/get-something.js new file mode 100644 index 00000000..9a5d7c8c --- /dev/null +++ b/packages/resolver/tests/fixtures/es/query/get-something.js @@ -0,0 +1,8 @@ + + +/** + * @return {array} list of something + */ +export default function getSomething() { + return ['Hello there'] +} -- Gitee From 83f12ef736fc074222cabc0d0699a319a4d973a4 Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:29:58 +0800 Subject: [PATCH 08/13] add es6 test for jsonql-resolver --- packages/resolver/package.json | 1 + packages/resolver/src/resolve-methods.js | 10 +++++-- packages/resolver/src/search-resolvers.js | 35 ++++++++++++++++++----- packages/resolver/tests/es.test.js | 30 +++++++++++++++++++ 4 files changed, 67 insertions(+), 9 deletions(-) create mode 100644 packages/resolver/tests/es.test.js diff --git a/packages/resolver/package.json b/packages/resolver/package.json index beabb3d5..aa3535b8 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -12,6 +12,7 @@ "prepare": "npm run test", "test:clients": "DEBUG=jsonql* ava --verbose ./tests/clients.test.js", "test:throw": "DEBUG=jsonql-resolver* ava --verbose ./tests/throw.test.js", + "test:es": "DEBUG=jsonql-resolver* ava --verbose ./tests/es.test.js", "contract": "DEBUG=jsonql-contract* jsonql-contract create ./tests/fixtures/resolvers ./tests/fixtures/contract" }, "keywords": [ diff --git a/packages/resolver/src/resolve-methods.js b/packages/resolver/src/resolve-methods.js index ed37f153..b0be78fa 100644 --- a/packages/resolver/src/resolve-methods.js +++ b/packages/resolver/src/resolve-methods.js @@ -16,10 +16,11 @@ const { handleOutput, ctxErrorHandler, packResult, - extractArgsFromPayload + extractArgsFromPayload, + findFromContract } = require('jsonql-utils') const { getDebug } = require('./utils') -const { searchResolvers, importFromModule } = require('./search-resolvers') +const { searchResolvers, importFromModule, requireEsModule } = require('./search-resolvers') const { validateAndCall } = require('./validate-and-call') const { provideNodeClients } = require('./provide-node-clients') @@ -40,8 +41,13 @@ const executeResolver = (opts, type, resolverName, payload, contract, userdata = let fn; const { sourceType } = contract; if (sourceType === MODULE_TYPE) { + /* const { resolverDir } = opts; fn = importFromModule(resolverDir, type, resolverName) + */ + const pathToResolver = findFromContract(type, resolverName, contract) + debug('call requireEsModule', resolverName, pathToResolver) + fn = requireEsModule(pathToResolver) } else { fn = require(searchResolvers(resolverName, type, opts, contract)) } diff --git a/packages/resolver/src/search-resolvers.js b/packages/resolver/src/search-resolvers.js index 172f4a3b..1deeb714 100644 --- a/packages/resolver/src/search-resolvers.js +++ b/packages/resolver/src/search-resolvers.js @@ -24,6 +24,25 @@ function importFromModule(resolverDir, type, resolverName) { return resolvers[ [type, resolverName].join('') ] } +/** + * Try to use the esm module to require the module directly + * @param {string} pathToResolver path to resolver from contract + * @return {*} resolver function on success + */ +function requireEsModule(pathToResolver) { + let oldRequire; + try { + oldRequire = require; + require = require("esm")(module/*, options*/) + return require(pathToResolver) + } catch (e) { + throw new Error(e) + } finally { + // reset the require here? + require = oldRequire; // reset + } +} + /** * search for the file starting with * 1. Is the path in the contract (or do we have a contract file) @@ -38,15 +57,16 @@ function importFromModule(resolverDir, type, resolverName) { function searchResolvers(name, type, opts, contract) { try { const json = typeof contract === 'string' ? JSON.parse(contract) : contract; - const search = findFromContract(type, name, json) - if (search !== false) { - return search; + let pathToResolver; + pathToResolver = findFromContract(type, name, json) + if (pathToResolver !== false) { + return pathToResolver; } debug(`contract is not contract?`, contract) // search by running - const filePath = getPathToFn(name, type, opts) - if (filePath) { - return filePath; + pathToResolver = getPathToFn(name, type, opts) + if (pathToResolver) { + return pathToResolver; } const debugMsg = `${name} not found! [${opts.name}]`; debug('JsonqlResolverNotFoundError', debugMsg) @@ -59,5 +79,6 @@ function searchResolvers(name, type, opts, contract) { module.exports = { searchResolvers, - importFromModule + importFromModule, + requireEsModule } diff --git a/packages/resolver/tests/es.test.js b/packages/resolver/tests/es.test.js new file mode 100644 index 00000000..4c7648ba --- /dev/null +++ b/packages/resolver/tests/es.test.js @@ -0,0 +1,30 @@ +// test the ES module import +const test = require('ava') +const { join } = require('path') +const debug = require('debug')('jsonql-resolver:test:es') +const contractApi = require('jsonql-contract') +// method to test +const { executeResolver } = require('../') +const { createQuery } = require('jsonql-utils') +// variables +const resolverDir = join(__dirname, 'fixtures', 'es') +const contractDir = join(__dirname, 'contract', 'es') +// before test +test.before(async t => { + // generate contract file for the es + t.context.contract = await contractApi({ + resolverDir, + contractDir, + returnAs: 'json' + }) +}) + +// start testing +test(`It should able to generate a contract for the es module`, t => { + const contract = t.context.contract; + + debug(contract) + + t.truthy(contract.query) + +}) -- Gitee From dea88b86f702cdab17b8c91203c6fe82377ff03e Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:40:33 +0800 Subject: [PATCH 09/13] The new require es module is test and working --- packages/resolver/src/search-resolvers.js | 9 +++- packages/resolver/tests/es.test.js | 28 +++++++++-- .../tests/fixtures/contract/es/contract.json | 48 +++++++++++++++++++ packages/resolver/tests/fixtures/es/import.js | 2 + .../resolver/tests/fixtures/es/resolver.js | 7 +++ 5 files changed, 89 insertions(+), 5 deletions(-) create mode 100644 packages/resolver/tests/fixtures/contract/es/contract.json create mode 100644 packages/resolver/tests/fixtures/es/import.js create mode 100644 packages/resolver/tests/fixtures/es/resolver.js diff --git a/packages/resolver/src/search-resolvers.js b/packages/resolver/src/search-resolvers.js index 1deeb714..0a533b4d 100644 --- a/packages/resolver/src/search-resolvers.js +++ b/packages/resolver/src/search-resolvers.js @@ -34,7 +34,14 @@ function requireEsModule(pathToResolver) { try { oldRequire = require; require = require("esm")(module/*, options*/) - return require(pathToResolver) + const obj = require(pathToResolver) + debug(obj) + if (typeof obj === 'function') { + return obj; + } else if (obj.default && typeof obj.default === 'function') { + return obj.default; + } + throw new Error(`Unable to import ES module!`) } catch (e) { throw new Error(e) } finally { diff --git a/packages/resolver/tests/es.test.js b/packages/resolver/tests/es.test.js index 4c7648ba..2602e859 100644 --- a/packages/resolver/tests/es.test.js +++ b/packages/resolver/tests/es.test.js @@ -8,15 +8,20 @@ const { executeResolver } = require('../') const { createQuery } = require('jsonql-utils') // variables const resolverDir = join(__dirname, 'fixtures', 'es') -const contractDir = join(__dirname, 'contract', 'es') +const contractDir = join(__dirname, 'fixtures', 'contract', 'es') // before test test.before(async t => { - // generate contract file for the es - t.context.contract = await contractApi({ + t.context.opts = { resolverDir, contractDir, returnAs: 'json' - }) + } + // generate contract file for the es + t.context.contract = await contractApi(t.context.opts) +}) +// after test +test.after(t => { + // todo }) // start testing @@ -26,5 +31,20 @@ test(`It should able to generate a contract for the es module`, t => { debug(contract) t.truthy(contract.query) +}) + +test.only(`It should able to use the requireEsModule to import ES module to commonjs code base`, async t => { + const resolverName = 'getSomething'; + const payload = createQuery(resolverName, []) + + const result = await executeResolver( + t.context.opts, + 'query', + resolverName, + payload[resolverName], + t.context.contract + ) + + t.is('Hello there', result[0]) }) diff --git a/packages/resolver/tests/fixtures/contract/es/contract.json b/packages/resolver/tests/fixtures/contract/es/contract.json new file mode 100644 index 00000000..dd6753f6 --- /dev/null +++ b/packages/resolver/tests/fixtures/contract/es/contract.json @@ -0,0 +1,48 @@ +{ + "query": { + "getSomething": { + "file": "/home/joel/projects/open-source/jsonql/packages/resolver/tests/fixtures/es/query/get-something.js", + "description": false, + "params": [], + "returns": [ + { + "type": [ + "array" + ], + "description": "list of something" + } + ] + } + }, + "mutation": { + "saveSomething": { + "file": "/home/joel/projects/open-source/jsonql/packages/resolver/tests/fixtures/es/mutation/save-something.js", + "description": false, + "params": [ + { + "type": [ + "object" + ], + "name": "payload" + }, + { + "type": [ + "object" + ], + "name": "condition" + } + ], + "returns": [ + { + "type": [ + "boolean" + ], + "description": "true on OK" + } + ] + } + }, + "auth": {}, + "timestamp": 1570437612, + "sourceType": "module" +} diff --git a/packages/resolver/tests/fixtures/es/import.js b/packages/resolver/tests/fixtures/es/import.js new file mode 100644 index 00000000..6601f782 --- /dev/null +++ b/packages/resolver/tests/fixtures/es/import.js @@ -0,0 +1,2 @@ +require = require("esm")(module/*, options*/) +module.exports = require("./resolver.js") diff --git a/packages/resolver/tests/fixtures/es/resolver.js b/packages/resolver/tests/fixtures/es/resolver.js new file mode 100644 index 00000000..9057792d --- /dev/null +++ b/packages/resolver/tests/fixtures/es/resolver.js @@ -0,0 +1,7 @@ +import querygetSomething from './query/get-something.js' +import mutationsaveSomething from './mutation/save-something.js' + +export { + querygetSomething, +mutationsaveSomething +} \ No newline at end of file -- Gitee From 96cf1a35b8fd8f285bb531597f128375ac29b0dc Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:41:17 +0800 Subject: [PATCH 10/13] jsonql-resolver to v0.9.3 --- packages/resolver/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/resolver/package.json b/packages/resolver/package.json index aa3535b8..b5d3e501 100644 --- a/packages/resolver/package.json +++ b/packages/resolver/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-resolver", - "version": "0.9.2", + "version": "0.9.3", "description": "This is NOT for general use, please do not install it directly. This module is part of the jsonql tools supporting modules.", "main": "index.js", "files": [ -- Gitee From 5c017e46c73ada55393f07159e111faa3bd20e38 Mon Sep 17 00:00:00 2001 From: joelchu Date: Mon, 7 Oct 2019 16:50:47 +0800 Subject: [PATCH 11/13] remove the esPostProcess from contract-cli on 1.7.21 --- packages/contract-cli/package.json | 2 +- packages/contract-cli/src/generator/generate-output.js | 9 ++++++--- packages/contract-cli/src/generator/get-resolver.js | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/contract-cli/package.json b/packages/contract-cli/package.json index b9127ffa..7e40d169 100755 --- a/packages/contract-cli/package.json +++ b/packages/contract-cli/package.json @@ -1,6 +1,6 @@ { "name": "jsonql-contract", - "version": "1.7.20", + "version": "1.7.21", "description": "JS API / command line tool to generate the contract.json for jsonql", "main": "index.js", "files": [ diff --git a/packages/contract-cli/src/generator/generate-output.js b/packages/contract-cli/src/generator/generate-output.js index bb29a9b4..dc9a9268 100644 --- a/packages/contract-cli/src/generator/generate-output.js +++ b/packages/contract-cli/src/generator/generate-output.js @@ -1,7 +1,8 @@ // the final step to generate output const { RETURN_AS_JSON } = require('jsonql-constants') const { keepOrCleanContract, isContractExisted, writeFileOut } = require('./files-op') -const { esPostProcess } = require('./es-post-process') +// @NOTE this is removed in v1.7.21 +// const { esPostProcess } = require('./es-post-process') const { mutateContract } = require('./helpers') const { join } = require('path') /** @@ -21,9 +22,11 @@ const generateOutput = function(sourceType, config, contract, rawData = false) { .then(() => mutateContract(config, contract)) .then(finalContract => ( writeFileOut(dist, finalContract) - .then(contract => ( + .then(() => ( + config.returnAs === RETURN_AS_JSON ? finalContract : dist + /* esPostProcess(sourceType, resolverDir, rawData || contract) - .then(() => config.returnAs === RETURN_AS_JSON ? finalContract : dist) + .then(() => config.returnAs === RETURN_AS_JSON ? finalContract : dist) */ )) )) } diff --git a/packages/contract-cli/src/generator/get-resolver.js b/packages/contract-cli/src/generator/get-resolver.js index 78e52283..185ec717 100644 --- a/packages/contract-cli/src/generator/get-resolver.js +++ b/packages/contract-cli/src/generator/get-resolver.js @@ -130,7 +130,7 @@ function getResolver(config, fileType) { const indexFile = [INDEX_KEY, fileType].join('.') // return a function here const fn = checkResolver(indexFile, config.resolverDir, fileType, config) - debug(fn.toString()) + // debug(fn.toString()) return fn; } -- Gitee From 8388ed1aec437005e97a9aacd43a81f60267b35e Mon Sep 17 00:00:00 2001 From: joelchu Date: Tue, 8 Oct 2019 16:15:40 +0800 Subject: [PATCH 12/13] update jsonql-node-client deps --- packages/node-client/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/node-client/package.json b/packages/node-client/package.json index 52ff4e1f..9e0647db 100755 --- a/packages/node-client/package.json +++ b/packages/node-client/package.json @@ -42,14 +42,14 @@ "jsonql-errors": "^1.1.3", "jsonql-jwt": "^1.3.2", "jsonql-params-validator": "^1.4.11", - "jsonql-utils": "^0.6.10", + "jsonql-utils": "^0.6.12", "lodash.merge": "^4.6.2", "node-cache": "^4.2.1", "request": "^2.88.0" }, "devDependencies": { "ava": "^2.4.0", - "jsonql-contract": "^1.7.15", + "jsonql-contract": "^1.7.20", "jsonql-koa": "^1.3.9", "nyc": "^14.1.1", "server-io-core": "^1.2.0", -- Gitee From a45c72d2c4461f0f5e0f97ef549cf4eefa926139 Mon Sep 17 00:00:00 2001 From: joelchu Date: Tue, 8 Oct 2019 16:42:36 +0800 Subject: [PATCH 13/13] es6 module test fixed and ready to publish --- packages/contract-cli/tests/generator.test.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/contract-cli/tests/generator.test.js b/packages/contract-cli/tests/generator.test.js index 7e68a788..509b0f14 100755 --- a/packages/contract-cli/tests/generator.test.js +++ b/packages/contract-cli/tests/generator.test.js @@ -3,6 +3,7 @@ const test = require('ava') const { join } = require('path') const { inspect } = require('util') const { + MODULE_TYPE, PUBLIC_KEY, DEFAULT_CONTRACT_FILE_NAME, PUBLIC_CONTRACT_FILE_NAME, @@ -29,8 +30,9 @@ test.after(async t => { fsx.removeSync(contractDir) fsx.removeSync(esContractDir) // remove the two generate files - fsx.removeSync( join(esResolverDir, DEFAULT_RESOLVER_LIST_FILE_NAME) ) - fsx.removeSync( join(esResolverDir, DEFAULT_RESOLVER_IMPORT_FILE_NAME) ) + // @NOTE remove these two files in 1.7.21 + // fsx.removeSync( join(esResolverDir, DEFAULT_RESOLVER_LIST_FILE_NAME) ) + // fsx.removeSync( join(esResolverDir, DEFAULT_RESOLVER_IMPORT_FILE_NAME) ) }) test.serial('Should able to read list of files', async t => { @@ -90,11 +92,11 @@ test.serial('It should able to parse ES6 style resolvers automatically', async t }) t.true( fsx.existsSync( join(esContractDir, DEFAULT_CONTRACT_FILE_NAME) ) ) - // - t.truthy( result.sourceType, 'should have a sourceType field' ) + // check if this is the module type + t.is( result.sourceType, MODULE_TYPE) - t.true( fsx.existsSync( join(esResolverDir, DEFAULT_RESOLVER_LIST_FILE_NAME) )) - t.true( fsx.existsSync( join(esResolverDir, DEFAULT_RESOLVER_IMPORT_FILE_NAME) )) + // t.true( fsx.existsSync( join(esResolverDir, DEFAULT_RESOLVER_LIST_FILE_NAME) )) + // t.true( fsx.existsSync( join(esResolverDir, DEFAULT_RESOLVER_IMPORT_FILE_NAME) )) }) test.serial('The ES6 public contract file should not contain a sourceType field', async t => { -- Gitee