Saji Kuttan
Saji Kuttan

Reputation: 1

Ionic 2 karma-jasmine unit tesing

I have issue while making test cases in karma-jasmine. The configuration is done, but i find difficulties in building test cases. The providers of ionic are found issues

package.json

"devDependencies": {
        "@angular/cli": "^8.3.1",
        "@angular/router": "^8.2.4",
        "@ionic/app-scripts": "^3.2.4",
        "@ionic/cli-plugin-proxy": "1.5.6",
        "@types/jasmine": "^3.4.0",
        "@types/node": "^12.7.2",
        "ionic-mocks": "^1.3.0",
        "jasmine-core": "2.99.1",
        "jasmine-spec-reporter": "^4.2.1",
        "karma": "^4.3.0",
        "karma-chrome-launcher": "^3.1.0",
        "karma-cli": "^2.0.0",
        "karma-coverage-istanbul-reporter": "^2.1.0",
        "karma-jasmine": "^2.0.1",
        "karma-jasmine-html-reporter": "^1.4.2",
        "karma-junit-reporter": "^1.2.0",
        "karma-typescript": "^4.1.1",
        "tslint-ionic-rules": "0.0.11",
        "typescript": "^2.4.2",
        "ws": "3.3.2" 
}

app.component.spec.ts

import { UsersProvider } from '../providers/users/users';
import { TestBed, inject } from '@angular/core/testing';
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
import { Http } from '../../node_modules/@angular/http';

let zone: any;
describe("TEST 1", () => {
let service: UsersProvider;
    let httpMock: HttpTestingController;
    beforeEach(() => {
        TestBed.configureTestingModule({
            providers: [UsersProvider]
        });
        service = TestBed.get(UsersProvider);
    });

    afterEach(() => {
        httpMock.verify();
    });

    describe('#registerUser tests', () => {
        it("Equality Test", function () {
        expect("Hello").toEqual("Hello");
        });
    });
});

output

An error was thrown in afterAll Error: Can't find ../providers/users/users [D:/MyApp/src/providers/users/users.ts] (required by D:/MyApp/src/app/app.spec.ts) at require (node_modules/karma-typescript/dist/client/commonjs.js:13:23) at node_modules/karma-typescript/dist/client/commonjs.js:18:24 at Object.global.wrappers.D:/MyApp/src/app/app.spec.ts.../providers/users/users (src/app/app.spec.ts:1:1 <- src/app/app.spec.js:3:15) at require (node_modules/karma-typescript/dist/client/commonjs.js:17:25) at node_modules/karma-typescript/dist/client/commonjs.js:38:9 at Array.forEach () at node_modules/karma-typescript/dist/client/commonjs.js:37:40 at node_modules/karma-typescript/dist/client/commonjs.js:40:3 Chrome 75.0.3770 (Windows 10.0.0): Executed 0 of 0 ERROR (0.005 secs / 0 secs)

Upvotes: 0

Views: 67

Answers (1)

Pushprajsinh Chudasama
Pushprajsinh Chudasama

Reputation: 7949

By setting random to false we have no longer been seeing these issues. We did this by adding this setting in the karma.conf.js:

config.set({
    client: {
      jasmine: {
        random: false
      }
    }
  });

Try it out .

Upvotes: 0

Related Questions