From e43cedd0f1d790f4b7fdf256b9d006b403811b9d Mon Sep 17 00:00:00 2001 From: Justin Hubert <135236159+Jstn2004@users.noreply.github.com> Date: Fri, 10 May 2024 09:07:15 +0200 Subject: [PATCH] fix: fehler in bisherigen Test behoben (#166) --- frontend/src/app/app.component.spec.ts | 16 ++++-------- frontend/src/app/app.component.ts | 2 +- .../challenge-button.component.spec.ts | 14 ++++++++++- .../atoms/timer/timer.component.spec.ts | 3 ++- .../challenge-dialog.component.spec.ts | 2 ++ .../loginform/loginform.component.spec.ts | 9 ++++++- .../roadmap/roadmap.component.spec.ts | 6 ++++- .../signupform/signupform.component.spec.ts | 3 ++- .../statistic-header.component.spec.ts | 4 ++- .../authenticationpage.component.spec.ts | 18 ++++++++++--- .../pages/mainpage/mainpage.component.spec.ts | 25 ++++++++++++++++--- frontend/src/index.html | 2 +- 12 files changed, 77 insertions(+), 27 deletions(-) diff --git a/frontend/src/app/app.component.spec.ts b/frontend/src/app/app.component.spec.ts index a1d7283..1ec8ed4 100644 --- a/frontend/src/app/app.component.spec.ts +++ b/frontend/src/app/app.component.spec.ts @@ -1,12 +1,13 @@ import { TestBed } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { AppComponent } from './app.component'; +import { ToastComponent } from './components/atoms/toast/toast.component'; describe('AppComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ imports: [RouterTestingModule], - declarations: [AppComponent], + declarations: [AppComponent, ToastComponent], }).compileComponents(); }); @@ -16,18 +17,11 @@ describe('AppComponent', () => { expect(app).toBeTruthy(); }); - it(`should have as title 'frontend'`, () => { + it(`should have as title 'duogradus. | Sammle Schritte, Tritt gegen Freunde an und steig in der Liga auf'`, () => { const fixture = TestBed.createComponent(AppComponent); const app = fixture.componentInstance; - expect(app.title).toEqual('frontend'); + expect(app.title).toEqual('duogradus. | Sammle Schritte, Tritt gegen Freunde an und steig in der Liga auf'); }); - it('should render title', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.nativeElement as HTMLElement; - expect(compiled.querySelector('h1')?.textContent).toContain( - 'Hello, frontend' - ); - }); + }); diff --git a/frontend/src/app/app.component.ts b/frontend/src/app/app.component.ts index ecceda1..1afe705 100644 --- a/frontend/src/app/app.component.ts +++ b/frontend/src/app/app.component.ts @@ -6,5 +6,5 @@ import { Component } from '@angular/core'; styleUrl: './app.component.scss' }) export class AppComponent { - title = 'frontend'; + title = 'duogradus. | Sammle Schritte, Tritt gegen Freunde an und steig in der Liga auf'; } diff --git a/frontend/src/app/components/atoms/challenge-button/challenge-button.component.spec.ts b/frontend/src/app/components/atoms/challenge-button/challenge-button.component.spec.ts index 7b7b582..49b9172 100644 --- a/frontend/src/app/components/atoms/challenge-button/challenge-button.component.spec.ts +++ b/frontend/src/app/components/atoms/challenge-button/challenge-button.component.spec.ts @@ -1,6 +1,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ChallengeButtonComponent } from './challenge-button.component'; +import { ChallengeDialogComponent } from 'app/components/organisms/challenge-dialog/challenge-dialog.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; describe('ChallengeButtonComponent', () => { let component: ChallengeButtonComponent; @@ -8,7 +10,8 @@ describe('ChallengeButtonComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [ChallengeButtonComponent] + declarations: [ChallengeButtonComponent, ChallengeDialogComponent], + imports: [BrowserAnimationsModule], }) .compileComponents(); @@ -20,4 +23,13 @@ describe('ChallengeButtonComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should create challenge dialog', () => { + const element: HTMLElement = fixture.nativeElement; + const routerOutlet = element.querySelector('app-challenge-dialog'); + expect(routerOutlet).toBeTruthy(); + }); + + + }); diff --git a/frontend/src/app/components/atoms/timer/timer.component.spec.ts b/frontend/src/app/components/atoms/timer/timer.component.spec.ts index 12cce71..fb12a83 100644 --- a/frontend/src/app/components/atoms/timer/timer.component.spec.ts +++ b/frontend/src/app/components/atoms/timer/timer.component.spec.ts @@ -1,6 +1,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { TimerComponent } from './timer.component'; +import { TimerPipe } from 'app/pipes/timer.pipe'; describe('TimerComponent', () => { let component: TimerComponent; @@ -8,7 +9,7 @@ describe('TimerComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [TimerComponent], + declarations: [TimerComponent, TimerPipe], }).compileComponents(); fixture = TestBed.createComponent(TimerComponent); diff --git a/frontend/src/app/components/organisms/challenge-dialog/challenge-dialog.component.spec.ts b/frontend/src/app/components/organisms/challenge-dialog/challenge-dialog.component.spec.ts index 04d747a..ad4e4ab 100644 --- a/frontend/src/app/components/organisms/challenge-dialog/challenge-dialog.component.spec.ts +++ b/frontend/src/app/components/organisms/challenge-dialog/challenge-dialog.component.spec.ts @@ -1,6 +1,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ChallengeDialogComponent } from './challenge-dialog.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; describe('ChallengeDialogComponent', () => { let component: ChallengeDialogComponent; @@ -9,6 +10,7 @@ describe('ChallengeDialogComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ declarations: [ChallengeDialogComponent], + imports: [BrowserAnimationsModule], }).compileComponents(); fixture = TestBed.createComponent(ChallengeDialogComponent); diff --git a/frontend/src/app/components/organisms/loginform/loginform.component.spec.ts b/frontend/src/app/components/organisms/loginform/loginform.component.spec.ts index 0d7bc9d..d87b3ed 100644 --- a/frontend/src/app/components/organisms/loginform/loginform.component.spec.ts +++ b/frontend/src/app/components/organisms/loginform/loginform.component.spec.ts @@ -1,6 +1,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { LoginformComponent } from './loginform.component'; +import { InputfieldComponent } from 'app/components/atoms/inputfield/inputfield.component'; describe('LoginformComponent', () => { let component: LoginformComponent; @@ -8,7 +9,7 @@ describe('LoginformComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [LoginformComponent] + declarations: [LoginformComponent, InputfieldComponent] }) .compileComponents(); @@ -20,4 +21,10 @@ describe('LoginformComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should create inputfield', () => { + const element: HTMLElement = fixture.nativeElement; + const inputfield = element.querySelector('app-inputfield'); + expect(inputfield).toBeTruthy(); + }); }); diff --git a/frontend/src/app/components/organisms/roadmap/roadmap.component.spec.ts b/frontend/src/app/components/organisms/roadmap/roadmap.component.spec.ts index eff947d..54f184e 100644 --- a/frontend/src/app/components/organisms/roadmap/roadmap.component.spec.ts +++ b/frontend/src/app/components/organisms/roadmap/roadmap.component.spec.ts @@ -1,6 +1,9 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { RoadmapComponent } from './roadmap.component'; +import { ChallengeButtonComponent } from 'app/components/atoms/challenge-button/challenge-button.component'; +import { ChallengeDialogComponent } from '../challenge-dialog/challenge-dialog.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; describe('RoadmapComponent', () => { let component: RoadmapComponent; @@ -8,7 +11,8 @@ describe('RoadmapComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [RoadmapComponent] + declarations: [RoadmapComponent, ChallengeButtonComponent, ChallengeDialogComponent], + imports: [BrowserAnimationsModule], }) .compileComponents(); diff --git a/frontend/src/app/components/organisms/signupform/signupform.component.spec.ts b/frontend/src/app/components/organisms/signupform/signupform.component.spec.ts index e0095aa..ad0230a 100644 --- a/frontend/src/app/components/organisms/signupform/signupform.component.spec.ts +++ b/frontend/src/app/components/organisms/signupform/signupform.component.spec.ts @@ -1,6 +1,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { SignupformComponent } from './signupform.component'; +import { InputfieldComponent } from 'app/components/atoms/inputfield/inputfield.component'; describe('SignupformComponent', () => { let component: SignupformComponent; @@ -8,7 +9,7 @@ describe('SignupformComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [SignupformComponent] + declarations: [SignupformComponent, InputfieldComponent] }) .compileComponents(); diff --git a/frontend/src/app/components/organisms/statistic-header/statistic-header.component.spec.ts b/frontend/src/app/components/organisms/statistic-header/statistic-header.component.spec.ts index 6d8f384..add5786 100644 --- a/frontend/src/app/components/organisms/statistic-header/statistic-header.component.spec.ts +++ b/frontend/src/app/components/organisms/statistic-header/statistic-header.component.spec.ts @@ -1,6 +1,8 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { StatisticHeaderComponent } from './statistic-header.component'; +import { TimerComponent } from 'app/components/atoms/timer/timer.component'; +import { TimerPipe } from 'app/pipes/timer.pipe'; describe('StatisticHeaderComponent', () => { let component: StatisticHeaderComponent; @@ -8,7 +10,7 @@ describe('StatisticHeaderComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [StatisticHeaderComponent] + declarations: [StatisticHeaderComponent, TimerComponent, TimerPipe] }) .compileComponents(); diff --git a/frontend/src/app/components/pages/authenticationpage/authenticationpage.component.spec.ts b/frontend/src/app/components/pages/authenticationpage/authenticationpage.component.spec.ts index bb2932b..5c90906 100644 --- a/frontend/src/app/components/pages/authenticationpage/authenticationpage.component.spec.ts +++ b/frontend/src/app/components/pages/authenticationpage/authenticationpage.component.spec.ts @@ -1,5 +1,5 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; - +import { RouterTestingModule } from '@angular/router/testing'; import { AuthenticationpageComponent } from './authenticationpage.component'; describe('AuthenticationpageComponent', () => { @@ -8,16 +8,26 @@ describe('AuthenticationpageComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [AuthenticationpageComponent] + declarations: [AuthenticationpageComponent], + imports: [RouterTestingModule] // Hier RouterTestingModule importieren, um RouterModule zu simulieren }) .compileComponents(); - + }); + + beforeEach(() => { fixture = TestBed.createComponent(AuthenticationpageComponent); component = fixture.componentInstance; fixture.detectChanges(); }); - it('should create', () => { + it('should create the component', () => { expect(component).toBeTruthy(); }); + + it('should contain a router-outlet element', () => { + const element: HTMLElement = fixture.nativeElement; + const routerOutlet = element.querySelector('router-outlet'); + expect(routerOutlet).toBeTruthy(); + }); }); + diff --git a/frontend/src/app/components/pages/mainpage/mainpage.component.spec.ts b/frontend/src/app/components/pages/mainpage/mainpage.component.spec.ts index 2b464ae..c28dd5c 100644 --- a/frontend/src/app/components/pages/mainpage/mainpage.component.spec.ts +++ b/frontend/src/app/components/pages/mainpage/mainpage.component.spec.ts @@ -1,6 +1,14 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { MainpageComponent } from './mainpage.component'; +import { StatisticHeaderComponent } from 'app/components/organisms/statistic-header/statistic-header.component'; +import { LoaderComponent } from 'app/components/atoms/loader/loader.component'; +import { RoadmapComponent } from 'app/components/organisms/roadmap/roadmap.component'; +import { TimerComponent } from 'app/components/atoms/timer/timer.component'; +import { TimerPipe } from 'app/pipes/timer.pipe'; +import { ChallengeButtonComponent } from 'app/components/atoms/challenge-button/challenge-button.component'; +import { ChallengeDialogComponent } from 'app/components/organisms/challenge-dialog/challenge-dialog.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; describe('MainpageComponent', () => { let component: MainpageComponent; @@ -8,10 +16,19 @@ describe('MainpageComponent', () => { beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [MainpageComponent] - }) - .compileComponents(); - + declarations: [ + MainpageComponent, + StatisticHeaderComponent, + LoaderComponent, + RoadmapComponent, + TimerComponent, + TimerPipe, + ChallengeDialogComponent, + ChallengeButtonComponent + ], + imports: [BrowserAnimationsModule], + }).compileComponents(); + fixture = TestBed.createComponent(MainpageComponent); component = fixture.componentInstance; fixture.detectChanges(); diff --git a/frontend/src/index.html b/frontend/src/index.html index 3cdbbd3..20e3213 100644 --- a/frontend/src/index.html +++ b/frontend/src/index.html @@ -2,7 +2,7 @@ - duogradus. | Sammle Schritte, Tritt gegen Freunde an und steig in der Liga auf + duogradus. | Sammle Schritte, Tritt gegen Freunde an und steig in der Liga auf