mock_jasmine.ts 2.33 KiB
/**
 * Mock fonction describe de Jasmine
 * @param sTxt Texte de la suite de test
 * @param fFun Fonction de la suite de test
 */
export function describe(sTxt: string, fFun: () => void) {
    // tslint:disable-next-line:no-console
    console.log(sTxt);
    fFun();
/**
 * Mock fonction xdescribe de Jasmine
 * @param sTxt Texte de la suite de test
 * @param fFun Fonction de la suite de test
export function xdescribe(sTxt: string, fFun: () => void) {
    // tslint:disable-next-line:no-console
    console.log(sTxt + " ignored ***");
/**
 * Mock fonction it de jasmine
 * @param sTxt Texte à afficher pour la spec
 * @param fFun Function à lancer pour la spec
export function it(sTxt: string, fFun: () => void) {
    // tslint:disable-next-line:no-console
    console.log(sTxt);
    fFun();
/**
 * Classe contenant les méthodes de comparaison de Jasmine.
class Expect {
    /**
     * Mock la function expect de Jasmine
     * @param actual Objet à tester
    public constructor(private actual: any) {
    /**
     * Mock de la function chainée à expect de test d'une valeur à un epsilon près
     * @param expected Valeur numérique attendue
     * @param precision Précision attendue (nombre de chiffre après la virgule)
    public toBeCloseTo(expected: number, precision: number) {
        const pow = Math.pow(10, precision + 1);
        const delta = Math.abs(expected - this.actual);
        const maxDelta = Math.pow(10, -precision) / 2;
        if (Math.round(delta * pow) / pow > maxDelta) {
            // tslint:disable-next-line:no-console
            console.error("Expected " + this.actual + " to be close to " + expected + "," + precision);
        return this;
    /**
     * Mock de la fonction toBe de Jasmine : the actual value to be `===` to the expected value
     * @param expected Objet de référence
    public toBe(expected: any) {
        return this.actual === expected;
    /**
     * Mock de la fonction toBe de Jasmine : the actual value to be `===` to the expected value
71727374757677787980818283848586
* @param expected Objet de référence */ public toEqual(expected: any) { return this.actual === expected; } } /** * Mock la function expect de Jasmine * @param actual Objet à tester */ export function expect(expected: any) { return new Expect(expected); }