Я создал Custom Jasmine Matcher:
export class OwnMatchers implements jasmine.CustomMatcherFactories {
[index: string]: any;
public toCheck(util: jasmine.MatchersUtil, customEqualityTesters: Array<jasmine.CustomEqualityTester>) {
return {
compare: async function (actual:any, expected: any) {
if (expected === undefined) {
expected = '';
}
const result = <jasmine.CustomMatcherResult>{};
let resultTest = await SreenShotTest.Check(expected.Data);
result.pass = util.equals(resultTest, true, customEqualityTesters);
if (result.pass)
{result.message = "Success" + ' ' + expected.Data;}
else
{result.message = "Not Success" + ' ' + expected.Data;}
return result;
}
}
}
}
, и я использую это
const customOwnMatchers = new OwnMatchers();
describe('App', () => {
let page: AppPage;
beforeEach(() => {
page = new AppPage();
jasmine.addMatchers(customOwnMatchers);
});
it('Test 1', async() => {
...
...
await (<any>expect()).toCheck({Data: '1'});
});
});
После запуска теста (ng e2e) я получил это сообщение об ошибке:
Ожидается, что не определено проверить объект ({Данные: '1'}).
Спасибо за ваши ответы