From 3954709bbc18f9be5a7c44212eb1b35738d32292 Mon Sep 17 00:00:00 2001 From: Ryan Graham Date: Tue, 9 Aug 2016 13:29:47 -0700 Subject: [PATCH] test: accept alternate test db credentials Allow the tests to run on ci.strongloop.com using the credentials that are given there, but translate them to the form that is used on cis-jenkins, which is actually the correct format. --- pretest.js | 12 +++++++++++- test/init.js | 7 +++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/pretest.js b/pretest.js index 294a24b..bb2e765 100644 --- a/pretest.js +++ b/pretest.js @@ -1,3 +1,10 @@ +// TODO: used for testing support for parallel testing on ci.strongloop.com which +// provides MYSQL_* env vars instead of TEST_MYSQL_* env vars. +process.env.TEST_MYSQL_USER = process.env.TEST_MYSQL_USER || process.env.MYSQL_USER; +process.env.TEST_MYSQL_PASSWORD = process.env.TEST_MYSQL_PASSWORD || process.env.MYSQL_PASSWORD; +process.env.TEST_MYSQL_HOST = process.env.TEST_MYSQL_HOST || process.env.MYSQL_HOST; +process.env.TEST_MYSQL_PORT = process.env.TEST_MYSQL_PORT || process.env.MYSQL_PORT; + if (!process.env.TEST_MYSQL_USER) { console.log('not seeding DB with example db'); return; @@ -23,6 +30,9 @@ if (process.env.TEST_MYSQL_PASSWORD) { console.log('seeding DB with example db...'); var mysql = cp.spawn('mysql', args, {stdio: stdio}); sql.pipe(mysql.stdin); -mysql.on('exit', function() { +mysql.on('exit', function(code) { console.log('done seeding DB'); + setTimeout(function() { + process.exit(code); + }, 200); }); diff --git a/test/init.js b/test/init.js index ac1e6e5..8d704f4 100644 --- a/test/init.js +++ b/test/init.js @@ -3,6 +3,13 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT +// TODO: used for testing support for parallel testing on ci.strongloop.com which +// provides MYSQL_* env vars instead of TEST_MYSQL_* env vars. +process.env.TEST_MYSQL_USER = process.env.TEST_MYSQL_USER || process.env.MYSQL_USER; +process.env.TEST_MYSQL_PASSWORD = process.env.TEST_MYSQL_PASSWORD || process.env.MYSQL_PASSWORD; +process.env.TEST_MYSQL_HOST = process.env.TEST_MYSQL_HOST || process.env.MYSQL_HOST; +process.env.TEST_MYSQL_PORT = process.env.TEST_MYSQL_PORT || process.env.MYSQL_PORT; + module.exports = require('should'); var DataSource = require('loopback-datasource-juggler').DataSource;