'use strict'; const databaseError = require("../"); const Promise = require("bluebird"); const knex = require("knex"); const util = require("util"); const path = require("path"); const createTables = require("./create-tables"); let db = knex({ client: "pg", connection: { host: "localhost", user: "sven", password: "password", database: "database_error" }, debug: true }); return Promise.try(() => { return createTables.down(db, true); }).then(() => { return createTables.up(db); }).then(() => { let testcase = require(path.join(process.cwd(), process.argv[2])); return testcase(db); }).catch(databaseError.rethrow).catch((err) => { console.log("__________________\n"); console.error(util.inspect(err, {colors: true, depth: 1})); console.log("__________________\n"); }).finally(() => { return createTables.down(db); }).finally(() => { return db.destroy(); });