(Hopefully) Fixed addon-detail.component.spec.ts

This commit is contained in:
Lynn
2020-11-22 15:20:06 +01:00
parent 0897e68d0e
commit 4fa9f95058
2 changed files with 55 additions and 5 deletions

View File

@@ -1,23 +1,73 @@
import { ComponentFixture, TestBed } from "@angular/core/testing";
import { AddonDetailComponent } from "./addon-detail.component";
import {AddonDetailComponent, AddonDetailModel} from "./addon-detail.component";
import { CUSTOM_ELEMENTS_SCHEMA } from "@angular/core";
import { MAT_DIALOG_DATA } from "@angular/material/dialog";
import { AddonService } from "../../services/addons/addon.service";
import {
TranslateCompiler,
TranslateLoader,
TranslateModule,
TranslateService, TranslateStore
} from "@ngx-translate/core";
import { Subject} from "rxjs";
import { AddonUpdateEvent } from "../../models/wowup/addon-update-event";
import { HttpClient, HttpClientModule } from "@angular/common/http";
import {httpLoaderFactory} from "../../app.module";
import {TranslateMessageFormatCompiler} from "ngx-translate-messageformat-compiler";
import {AddonViewModel} from "../../business-objects/my-addon-list-item";
import {Addon} from "../../entities/addon";
describe("AddonDetailComponent", () => {
let component: AddonDetailComponent;
let fixture: ComponentFixture<AddonDetailComponent>;
let addonService: AddonService;
let dialogModel: AddonDetailModel;
let addonServiceSpy: any;
beforeEach(async () => {
addonServiceSpy = jasmine.createSpyObj("AddonService", ["logDebugData"], {
addonInstalled$ : new Subject<AddonUpdateEvent>().asObservable(),
});
const viewModel = new AddonViewModel({
installedVersion: "1.0.0",
externalId: '52001',
} as Addon);
dialogModel = {listItem: viewModel} as AddonDetailModel;
await TestBed.configureTestingModule({
declarations: [AddonDetailComponent],
imports: [HttpClientModule, TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: httpLoaderFactory,
deps: [HttpClient],
},
compiler: {
provide: TranslateCompiler,
useClass: TranslateMessageFormatCompiler,
},
})],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
providers: [
{ provide: MAT_DIALOG_DATA, useValue: dialogModel },
]
}).overrideComponent(AddonDetailComponent, {
set: {
providers: [
{ provide: AddonService, useValue: addonServiceSpy },
]},
}).compileComponents();
});
beforeEach(() => {
fixture = TestBed.createComponent(AddonDetailComponent);
component = fixture.componentInstance;
addonService = fixture.debugElement.injector.get(AddonService);
fixture.detectChanges();
});
it("should create", () => {
it("should create a", () => {
expect(component).toBeTruthy();
});
});

View File

@@ -9,11 +9,11 @@ import { httpLoaderFactory } from "../../app.module";
describe("OptionsDebugSectionComponent", () => {
let component: OptionsDebugSectionComponent;
let fixture: ComponentFixture<OptionsDebugSectionComponent>;
let addonService: AddonService;
let wowUpService: WowUpService;
let addonServiceSpy: any;
let wowUpServiceSpy: any;
let fixture: ComponentFixture<OptionsDebugSectionComponent>;
beforeEach(async () => {
addonServiceSpy = jasmine.createSpyObj(AddonService, ["logDebugData"]);