import { EntityUtils } from '../web-api/entity-utils'; /** * @export * @class TestUtils */ export class TestUtils { /** * @static * @param {any} obj * @param {any} props * * @memberOf TestUtils */ public static expectToBe(obj, props) { var keys = Object.keys(props); keys.forEach(key => { expect(obj[key]).toBe(props[key]); }); } /** * @static * @param {any} e * * @memberOf TestUtils */ public static logJudgeError(e) { console.log(e) if (e.response && e.response.data) { console.log(e.response.data.errors) } else if (e.data) { console.log(e.data.errors) } console.log(e.stack) } /** * @static * @param {object} target * @param {object} dates * * @memberOf TestUtils */ public static expectDate(target: object, dates: object): void { var keys = Object.keys(dates); keys.forEach(key => { expect(target[key].toString()).toBe(new Date(EntityUtils.parseISODate(dates[key])).toString()); }) } /** * @static * @param {string} url * @param {string} toBeUrl * @returns {void} * * @memberOf TestUtils */ public static expectUrl(url: string, toBeUrl: string): void { var regex = /(.+)(\/webapi.+)/; expect(url.replace(regex, '$2')).toBe(toBeUrl); } }