Load only test plugin during tests

The other plugins in my path were causing the tests to fail.
This commit is contained in:
Asher 2021-01-19 16:44:42 -06:00
parent f6b04c7c29
commit fb37473e72
No known key found for this signature in database
GPG Key ID: D63C1EF81242354A
2 changed files with 8 additions and 5 deletions

View File

@ -118,7 +118,7 @@ export class PluginAPI {
* loadPlugins loads all plugins based on this.csPlugin,
* this.csPluginPath and the built in plugins.
*/
public async loadPlugins(): Promise<void> {
public async loadPlugins(loadBuiltin = true): Promise<void> {
for (const dir of this.csPlugin.split(":")) {
if (!dir) {
continue
@ -133,8 +133,9 @@ export class PluginAPI {
await this._loadPlugins(dir)
}
// Built-in plugins.
await this._loadPlugins(path.join(__dirname, "../../plugins"))
if (loadBuiltin) {
await this._loadPlugins(path.join(__dirname, "../../plugins"))
}
}
/**

View File

@ -15,8 +15,10 @@ describe("plugin", () => {
let s: httpserver.HttpServer
beforeAll(async () => {
papi = new PluginAPI(logger, `${path.resolve(__dirname, "test-plugin")}:meow`)
await papi.loadPlugins()
// Only include the test plugin to avoid contaminating results with other
// plugins that might be on the filesystem.
papi = new PluginAPI(logger, `${path.resolve(__dirname, "test-plugin")}:meow`, "")
await papi.loadPlugins(false)
const app = express.default()
papi.mount(app)