【解決方法】角度テストケースで助けが必要です。

[ad_1]

私は角度の初心者です。 サービスクラスのテストケースを作成したいと考えています。 以下は私のサービスクラスコードです:

import { Injectable } from '@angular/core';
import { Logger } from 'myapp-ng';
import { Observable } from 'rxjs';
import { AppToolbox } from '../app.toolbox';

@Injectable({
  providedIn: 'root'
})
export class demoService {

  constructor(public toolbox: AppToolbox) { }

  getDemoRoute(): Observable<any> {
    let url = this.toolbox.url.baseUri + 'api/App/GetDemoRoute';
    const demoRoute = this.toolbox.http.get(url,
      { responseType: 'text' });
    Logger.log(demoRoute);
    return demoRoute;
  };
}

単純なテストケースを書いて、それが機能しているかどうかを確認するだけですが、以下のエラーが発生しました。

NullInjectorError: R3InjectorError(DynamicTestModule)[DemoService -> AppToolbox -> InjectionToken Injection token used to inject the Angular Intializer passed into the forRoot function for MyAppCoreModule. -> InjectionToken Injection token used to inject the Angular Intializer passed into the forRoot function for MyAppCoreModule.]: 
  NullInjectorError: No provider for InjectionToken Injection token used to inject the Angular Intializer passed into the forRoot function for MyAppCoreModule.!

私が試したこと:

これが私が書いた私のテストケースコードです:

import { TestBed, inject } from '@angular/core/testing';
import { DemoService } from '../demo.service';
import { AppToolbox } from '../../app.toolbox';
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
import { Logger } from 'myapp-ng';

describe('DemoService', () => {
  let demoService: DemoService;
  let appToolbox: AppToolbox;
  let httpTestingController: HttpTestingController;

  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [HttpClientTestingModule],
      providers: [DemoService, AppToolbox]
    });

    demoService = TestBed.inject(DemoService);
    appToolbox = TestBed.inject(AppToolbox);
    httpTestingController = TestBed.inject(HttpTestingController);
  });


  it('should be created', () => {
    expect(true).toBe(true);
  });

});

誰か解決策を提案してもらえますか?

[ad_2]

コメント

タイトルとURLをコピーしました