Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
async function runTest(
testFunction: TestFunction,
{ template, customDefaultTrigger }: TestSetupContext
) {
const ctx = TestContext.createHTMLTestContext();
const container = ctx.container;
const host = ctx.dom.createElement('app');
ctx.doc.body.appendChild(host);
let app;
const au = new Aurelia(container);
await au
.register(
customDefaultTrigger
? ValidationConfiguration.customize((options) => {
options.defaultTrigger = customDefaultTrigger;
})
: ValidationConfiguration
)
.app({
host,
component: app = (() => {
const ca = CustomElement.define({ name: 'app', isStrictBinding: true, template }, App);
return new ca(container);
})()
})
.start()
.wait();
await testFunction({ app, container, host });
function setup(validator?: Class) {
const container = DI.createContainer();
container.register(
validator
? ValidationConfiguration.customize((options) => {
options.validator = validator;
})
: ValidationConfiguration);
return { sut: container.get(IValidator), container };
}
function setup(customMessages?: ICustomMessage[]) {
const container = TestContext.createHTMLTestContext().container;
const eventLog = new EventLog();
const configuration = customMessages !== (void 0)
? ValidationConfiguration.customize((options) => {
options.customMessages = customMessages;
})
: ValidationConfiguration;
container.register(
configuration,
Registration.instance(ISink, eventLog)
);
return {
sut: container.get(IValidationMessageProvider),
container,
eventLog
};
}