mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.2 KiB
47 lines
1.2 KiB
import express from 'express'; |
|
import nocobuild from '../../../src/nocobuild'; |
|
// import { Noco } from '../../../src/lib'; |
|
import { createUser } from '../factory/user'; |
|
import cleanupMeta from './cleanupMeta'; |
|
import { cleanUpSakila, resetAndSeedSakila } from './cleanupSakila'; |
|
|
|
let server; |
|
|
|
const serverInit = async () => { |
|
const serverInstance = express(); |
|
serverInstance.enable('trust proxy'); |
|
// serverInstance.use(await Noco.init()); |
|
await nocobuild(serverInstance); |
|
serverInstance.use(function (req, res, next) { |
|
// 50 sec timeout |
|
req.setTimeout(500000, function () { |
|
console.log('Request has timed out.'); |
|
res.send(408); |
|
}); |
|
next(); |
|
}); |
|
return serverInstance; |
|
}; |
|
|
|
const isFirstTimeRun = () => !server; |
|
|
|
export default async function () { |
|
const { default: TestDbMngr } = await import('../TestDbMngr'); |
|
|
|
if (isFirstTimeRun()) { |
|
await resetAndSeedSakila(); |
|
server = await serverInit(); |
|
} |
|
|
|
await cleanUpSakila(); |
|
await cleanupMeta(); |
|
|
|
const { token } = await createUser({ app: server }, { roles: 'editor' }); |
|
|
|
return { |
|
app: server, |
|
token, |
|
dbConfig: TestDbMngr.dbConfig, |
|
sakilaDbConfig: TestDbMngr.getSakilaDbConfig(), |
|
}; |
|
}
|
|
|