46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
import app from "@adonisjs/core/services/app"
|
|
import testUtils from "@adonisjs/core/services/test_utils"
|
|
import { apiClient } from "@japa/api-client"
|
|
import { assert } from "@japa/assert"
|
|
import { pluginAdonisJS } from "@japa/plugin-adonisjs"
|
|
import type { Config } from "@japa/runner/types"
|
|
|
|
/**
|
|
* This file is imported by the "bin/test.ts" entrypoint file
|
|
*/
|
|
|
|
/**
|
|
* Configure Japa plugins in the plugins array.
|
|
* Learn more - https://japa.dev/docs/runner-config#plugins-optional
|
|
*/
|
|
export const plugins: Config["plugins"] = [
|
|
assert(),
|
|
apiClient(),
|
|
pluginAdonisJS(app),
|
|
]
|
|
|
|
/**
|
|
* Configure lifecycle function to run before and after all the tests.
|
|
*
|
|
* The setup functions are executed before all the tests.
|
|
* The teardown functions are executer after all the tests.
|
|
*/
|
|
export const runnerHooks: Required<Pick<Config, "setup" | "teardown">> = {
|
|
setup: [
|
|
async () => {
|
|
return await testUtils.db().truncate()
|
|
},
|
|
],
|
|
teardown: [],
|
|
}
|
|
|
|
/**
|
|
* Configure suites by tapping into the test suite instance.
|
|
* Learn more - https://japa.dev/docs/test-suites#lifecycle-hooks
|
|
*/
|
|
export const configureSuite: Config["configureSuite"] = (suite) => {
|
|
return suite.setup(async () => {
|
|
return await testUtils.httpServer().start()
|
|
})
|
|
}
|