mapcomplete/test/testhooks.ts

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

42 lines
1.3 KiB
TypeScript
Raw Normal View History

2022-03-23 19:48:06 +01:00
import ScriptUtils from "../scripts/ScriptUtils"
import { Utils } from "../Utils"
import * as fakedom from "fake-dom"
import Locale from "../UI/i18n/Locale"
2022-03-23 19:48:06 +01:00
export const mochaHooks = {
beforeEach(done) {
ScriptUtils.fixUtils()
Locale.language.setData("en")
if (fakedom === undefined || window === undefined) {
throw "FakeDom not initialized"
}
2022-03-23 19:48:06 +01:00
// Block internet access
const realDownloadFunc = Utils.externalDownloadFunction
Utils.externalDownloadFunction = async (url) => {
console.error(
"Fetching ",
url,
"blocked in tests, use Utils.injectJsonDownloadForTests"
)
const data = await realDownloadFunc(url)
console.log(
"\n\n ----------- \nBLOCKED DATA\n Utils.injectJsonDownloadForTests(\n" + " ",
JSON.stringify(url),
", \n",
" ",
JSON.stringify(data),
"\n )\n------------------\n\n"
)
throw new Error(
"Detected internet access for URL " +
url +
", please inject it with Utils.injectJsonDownloadForTests"
)
}
2022-09-08 21:40:48 +02:00
2022-03-23 19:48:06 +01:00
done()
},
}