import { Env } from "../src/component"; import { QWeb } from "../src/qweb_vdom"; export function nextMicroTick(): Promise { return Promise.resolve(); } export function nextTick(): Promise { return new Promise(resolve => setTimeout(resolve)); } export function makeTestFixture() { let fixture = document.createElement("div"); document.body.appendChild(fixture); return fixture; } export function normalize(str: string): string { return str.replace(/\s+/g, ""); } interface Deferred extends Promise { resolve(val?: any): void; reject(): void; } export function makeDeferred(): Deferred { let resolve, reject; let def = new Promise((_resolve, _reject) => { resolve = _resolve; reject = _reject; }); (def).resolve = resolve; (def).reject = reject; return def; } export function makeTestWEnv(): Env { return { qweb: new QWeb() }; }