2020-06-11 17:59:11 +02:00
|
|
|
// What this script does:
|
2020-08-05 16:18:28 +02:00
|
|
|
// 1. Removes the old test folder if it exists (.budibase)
|
|
|
|
// 2. Initialises using `.budibase`
|
2020-06-11 17:59:11 +02:00
|
|
|
// 3. Runs the server using said folder
|
|
|
|
|
2020-06-11 18:14:28 +02:00
|
|
|
const rimraf = require("rimraf")
|
2020-10-28 12:23:26 +01:00
|
|
|
const { join, resolve } = require("path")
|
|
|
|
// const run = require("../../cli/src/commands/run/runHandler")
|
2020-08-05 16:18:28 +02:00
|
|
|
const initialiseBudibase = require("../../server/src/utilities/initialiseBudibase")
|
|
|
|
|
|
|
|
const homedir = join(require("os").homedir(), ".budibase")
|
2020-06-11 17:59:11 +02:00
|
|
|
|
2020-06-11 18:10:53 +02:00
|
|
|
rimraf.sync(homedir)
|
2020-06-11 17:59:11 +02:00
|
|
|
|
2020-08-05 16:18:28 +02:00
|
|
|
process.env.BUDIBASE_API_KEY = "6BE826CB-6B30-4AEC-8777-2E90464633DE"
|
|
|
|
process.env.NODE_ENV = "cypress"
|
2020-09-29 18:28:24 +02:00
|
|
|
process.env.ENABLE_ANALYTICS = "false"
|
2020-08-05 16:18:28 +02:00
|
|
|
|
2020-12-01 15:35:47 +01:00
|
|
|
// Stop info logs polluting test outputs
|
|
|
|
process.env.LOG_LEVEL = "error"
|
|
|
|
|
2020-10-28 12:23:26 +01:00
|
|
|
async function run(dir) {
|
|
|
|
process.env.BUDIBASE_DIR = resolve(dir)
|
|
|
|
require("dotenv").config({ path: resolve(dir, ".env") })
|
|
|
|
|
|
|
|
// dont make this a variable or top level require
|
|
|
|
// it will cause environment module to be loaded prematurely
|
|
|
|
const server = require("../../server/src/app")
|
|
|
|
server.on("close", () => console.log("Server Closed"))
|
|
|
|
}
|
|
|
|
|
2020-08-05 16:18:28 +02:00
|
|
|
initialiseBudibase({ dir: homedir, clientId: "cypress-test" })
|
|
|
|
.then(() => {
|
|
|
|
delete require.cache[require.resolve("../../server/src/environment")]
|
2020-10-28 12:23:26 +01:00
|
|
|
const xPlatHomeDir = homedir.startsWith("~")
|
|
|
|
? join(homedir(), homedir.substring(1))
|
|
|
|
: homedir
|
|
|
|
run(xPlatHomeDir)
|
2020-08-05 16:18:28 +02:00
|
|
|
})
|
|
|
|
.catch(e => console.error(e))
|