diff --git a/appengine/cloudsql/package.json b/appengine/cloudsql/package.json index 80c2b7287f..9d26eb0d06 100644 --- a/appengine/cloudsql/package.json +++ b/appengine/cloudsql/package.json @@ -13,25 +13,26 @@ "node": ">=8.0.0" }, "scripts": { - "unit-test": "mocha test/*.test.js --timeout=60000", + "unit-test": "mocha test/createTables.test.js --timeout=60000 && mocha test/server.test.js", "start-proxy": "! pgrep cloud_sql_proxy > /dev/null && cloud_sql_proxy -instances=$INSTANCE_CONNECTION_NAME=tcp:$SQL_PORT &", - "system-test": "repo-tools test app -- server.js", + "system-test": "mocha test/serverListening.test.js --exit", "system-test-proxy": "npm run start-proxy; npm run system-test", "all-test": "npm run unit-test && npm run system-test", "test": "npm -- run all-test" }, "dependencies": { + "chai": "^4.2.0", "express": "^4.16.4", "knex": "^0.20.0", "mysql": "^2.16.0", "prompt": "^1.0.0" }, "devDependencies": { - "@google-cloud/nodejs-repo-tools": "^3.3.0", "mocha": "^7.0.0", "proxyquire": "^2.1.0", "sinon": "^9.0.0", - "supertest": "^4.0.0" + "supertest": "^4.0.0", + "wait-port": "^0.2.7" }, "cloud-repo-tools": { "requiresKeyFile": true, diff --git a/appengine/cloudsql/test/serverListening.test.js b/appengine/cloudsql/test/serverListening.test.js new file mode 100644 index 0000000000..53c2e52319 --- /dev/null +++ b/appengine/cloudsql/test/serverListening.test.js @@ -0,0 +1,10 @@ +const waitPort = require('wait-port'); +const {expect} = require('chai'); + +describe('server listening', () => { + it('should be listening', async () => { + require('../server.js'); + const isOpen = await waitPort({port: 8080}); + expect(isOpen).to.be.true; + }); +});