UNPKG

terriajs

Version:

Geospatial data visualization platform.

74 lines (63 loc) 1.99 kB
/// <reference types="jasmine" /> import "../lib/Core/prerequisites"; import { configure, spy } from "mobx"; import i18next from "i18next"; import registerCatalogMembers from "../lib/Models/Catalog/registerCatalogMembers"; import JasmineDOM from "@testing-library/jasmine-dom"; import { initReactI18next } from "react-i18next"; import english from "../wwwroot/languages/en/translation.json"; import { worker } from "./mocks/browser"; configure({ enforceActions: "always", computedRequiresReaction: true, // Turn off safeDescriptors required for spying on computed items // TODO: mobx docs says this should only be enabled when need and not globally, // see if we can remove this global setting safeDescriptors: false }); registerCatalogMembers(); // Fail the test if a MobX computed property throws an exception. spy((event) => { if (event.type === "error") { fail(event.message); } }); beforeAll(async function () { jasmine.addMatchers(JasmineDOM); // Unregister stale service workers from previous test runs, // then start MSW worker for network interception. const registrations = await navigator.serviceWorker.getRegistrations(); for (const reg of registrations) { await reg.unregister(); } await worker.start({ onUnhandledRequest: (request, print) => { print.error(); fail(`Unhandled ${request.method} request to ${request.url}`); throw new Error(`Unhandled ${request.method} request to ${request.url}`); }, quiet: true }); await i18next.use(initReactI18next).init({ lng: "cimode", debug: false, resources: { en: { translation: english } } }); }); beforeEach(function () { worker.resetHandlers(); }); afterAll(function () { worker.resetHandlers(); }); jasmine.getEnv().addReporter({ specDone: (result) => (result.failedExpectations || []).forEach((expectation) => console.warn(expectation.stack) ) }); jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;