fix: Fixed app update test

This commit is contained in:
2025-06-11 12:41:26 +02:00
parent a25a90c0d7
commit 7fedaf09dc

View File

@@ -1,16 +1,68 @@
import { TestBed } from '@angular/core/testing' import { ComponentFixture, TestBed } from '@angular/core/testing'
import { AppUpdateService } from './app-update.service' import { AppUpdateService } from './app-update.service'
import { SwUpdate } from '@angular/service-worker'
import { of } from 'rxjs'
import { MATERIAL_ANIMATIONS } from '@angular/material/core'
import { HarnessLoader } from '@angular/cdk/testing'
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed'
import { MatSnackBarHarness } from "@angular/material/snack-bar/testing";
import { Component } from '@angular/core'
@Component({
standalone: false,
})
class BlankPage {
constructor (private au: AppUpdateService) {}
}
describe('AppUpdateService', () => { describe('AppUpdateService', () => {
let fixture: ComponentFixture<BlankPage>
let loader: HarnessLoader
let service: AppUpdateService let service: AppUpdateService
let swuMock: jasmine.SpyObj<SwUpdate>
beforeEach(() => { beforeEach(() => {
TestBed.configureTestingModule({}) swuMock = jasmine.createSpyObj("SwUpdate", {
checkForUpdate: new Promise(() => {}),
}, {
versionUpdates: of()
})
TestBed.configureTestingModule({
declarations: [BlankPage],
providers: [
{provide: SwUpdate, useValue: swuMock},
{provide: MATERIAL_ANIMATIONS, useValue: { animationsDisabled: true }}
]
})
fixture = TestBed.createComponent(BlankPage)
fixture.detectChanges()
service = TestBed.inject(AppUpdateService) service = TestBed.inject(AppUpdateService)
loader = TestbedHarnessEnvironment.documentRootLoader(fixture)
}) })
xit('should be created', () => { it('should be created', () => {
expect(service).toBeTruthy() expect(service).toBeTruthy()
}) })
it('should load harness for snackbar', async () => {
service.promptUser()
let snackBars = await loader.getAllHarnesses(MatSnackBarHarness);
expect(snackBars.length).toBe(1)
})
it('should be able to get snackbar content', async () => {
service.promptUser()
let snackBar = await loader.getHarness(MatSnackBarHarness)
expect(await snackBar.getMessage()).toBeDefined()
})
it('should be able to get snackbar action', async () => {
service.promptUser()
let snackBar = await loader.getHarness(MatSnackBarHarness)
expect(await snackBar.getActionDescription()).toBeDefined()
})
}) })