34 lines
782 B
JavaScript
34 lines
782 B
JavaScript
import { runAsyncEffects } from '../../../libs/horizon/src/renderer/submit/HookEffectHandler';
|
|
import { callRenderQueueImmediate } from '../../../libs/horizon/src/renderer/taskExecutor/RenderQueue';
|
|
import { asyncUpdates } from '../../../libs/horizon/src/renderer/TreeBuilder';
|
|
|
|
function runAssertion(fn) {
|
|
try {
|
|
fn();
|
|
} catch (error) {
|
|
return {
|
|
pass: false,
|
|
message: () => error.message,
|
|
};
|
|
}
|
|
return { pass: true };
|
|
}
|
|
|
|
function toMatchValue(LogUtils, expectedValues) {
|
|
return runAssertion(() => {
|
|
const actualValues = LogUtils.getAndClear();
|
|
expect(actualValues).toEqual(expectedValues);
|
|
});
|
|
}
|
|
|
|
const act = (fun) => {
|
|
asyncUpdates(fun);
|
|
callRenderQueueImmediate();
|
|
runAsyncEffects();
|
|
}
|
|
|
|
module.exports = {
|
|
toMatchValue,
|
|
act
|
|
};
|