@angular-package/testing
Version:
Jasmine unit testing wrapper with additional custom testing features.
1 lines • 1.37 kB
JavaScript
import{TestingDescribe}from"./testing-describe.class";import{TestingExpectation}from"./testing-expectation.class";import{TextualExpectation}from"./textual-expectation.abstract";import{TestingIt}from"./testing-it.class";export class TestingCore{get expect(){return this.#t}get testingDescribe(){return this.#e}get testingIt(){return this.#i}#t;#e;#i;constructor(t=!0,e=!0,i,s=[!0,!1],r=new TestingDescribe(t,i?.describe,s),n=new TestingIt(e,i?.it,s),c=new TestingExpectation){this.#e=r,this.#i=n,this.#t=c}afterAll(t,e,i=!0){return(i=>{i&&afterAll(t,e)})(i),this}afterEach(t,e,i=!0){return(i=>{i&&afterEach(t,e)})(i),this}beforeAll(t,e,i=!0){return(i=>{i&&beforeAll(t,e)})(i),this}beforeEach(t,e,i=!0){return(i=>{i&&beforeEach(t,e)})(i),this}describe(t,e,i){return this.testingIt.resetCounter(),this.testingDescribe.describe(t,e,i),this}fdescribe(t,e){return this.testingIt.resetCounter(),this.testingDescribe.fdescribe(t,e),this}it(t,e,i){return this.testingIt.it(t,e,i),this}setSpecProperty(t,e){return setSpecProperty(t,e),this}setSuiteProperty(t,e){return setSuiteProperty(t,e),this}spec(t,e="",i){return 0===e.length&&(Object.entries(TextualExpectation).forEach((([i,s])=>t.toString().includes(i)&&(e+=s+" and "))),e=e.slice(0,-5)),this.it(e,(()=>t(this.expect)),i),this}xdescribe(t,e){return this.testingIt.resetCounter(),this.testingDescribe.xdescribe(t,e),this}}