From 4d325407844a61b10c1839c2d546c9882d21ceb9 Mon Sep 17 00:00:00 2001 From: Lucas Lara Date: Wed, 2 Apr 2025 09:51:24 +0200 Subject: [PATCH] Fixed tests --- .../deploy-image.component.spec.ts | 25 ++++++-- .../deploy-image/deploy-image.component.ts | 2 +- .../run-script-assistant.component.spec.ts | 62 ++++++++++++------- 3 files changed, 59 insertions(+), 30 deletions(-) diff --git a/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.spec.ts b/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.spec.ts index 4d10254..c56b048 100644 --- a/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.spec.ts +++ b/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.spec.ts @@ -10,14 +10,15 @@ import { MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { MatTableModule } from '@angular/material/table'; import { MatDividerModule } from '@angular/material/divider'; -import { MatRadioModule } from '@angular/material/radio'; +import { MatRadioModule } from '@angular/material/radio'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { TranslateModule } from '@ngx-translate/core'; import { ToastrModule, ToastrService } from 'ngx-toastr'; -import { provideRouter } from '@angular/router'; +import { ActivatedRoute, provideRouter } from '@angular/router'; +import { NO_ERRORS_SCHEMA } from '@angular/core'; import { MatSelectModule } from '@angular/material/select'; -import {MatExpansionModule} from "@angular/material/expansion"; -import {LoadingComponent} from "../../../../../shared/loading/loading.component"; +import { MatExpansionModule } from "@angular/material/expansion"; +import { LoadingComponent } from "../../../../../shared/loading/loading.component"; import { ConfigService } from '@services/config.service'; describe('DeployImageComponent', () => { @@ -63,13 +64,25 @@ describe('DeployImageComponent', () => { provide: MAT_DIALOG_DATA, useValue: {} }, + { + provide: ActivatedRoute, + useValue: { + queryParams: { + subscribe: (fn: (value: any) => void) => fn({ clientData: JSON.stringify([{ '@id': '123', uuid: 'client-uuid', status: 'og-live', partitions: [] }]) }) + } + } + }, { provide: ConfigService, useValue: mockConfigService } - ] + ], + schemas: [NO_ERRORS_SCHEMA] }) - .compileComponents(); + .compileComponents(); fixture = TestBed.createComponent(DeployImageComponent); component = fixture.componentInstance; + component.clientData = [{ '@id': '123', uuid: 'client-uuid', status: 'og-live', partitions: [] }]; + component.selectedModelClient = component.clientData[0]; + component.loadPartitions(component.selectedModelClient); fixture.detectChanges(); }); diff --git a/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.ts b/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.ts index 865dc44..6bd9d7d 100644 --- a/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.ts +++ b/ogWebconsole/src/app/components/groups/components/client-main-view/deploy-image/deploy-image.component.ts @@ -155,7 +155,7 @@ export class DeployImageComponent { this.http.get(`${this.baseUrl}${client.uuid}`).subscribe( (fullClientData: any) => { this.filteredPartitions = fullClientData.partitions; - this.selectedRepository = fullClientData.repository + this.selectedRepository = fullClientData.repository ?? null; if (fullClientData.partitions) { this.filteredPartitions = fullClientData.partitions.filter((partition: any) => { diff --git a/ogWebconsole/src/app/components/groups/components/client-main-view/run-script-assistant/run-script-assistant.component.spec.ts b/ogWebconsole/src/app/components/groups/components/client-main-view/run-script-assistant/run-script-assistant.component.spec.ts index 18e51ea..57871b9 100644 --- a/ogWebconsole/src/app/components/groups/components/client-main-view/run-script-assistant/run-script-assistant.component.spec.ts +++ b/ogWebconsole/src/app/components/groups/components/client-main-view/run-script-assistant/run-script-assistant.component.spec.ts @@ -1,26 +1,34 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; - import { RunScriptAssistantComponent } from './run-script-assistant.component'; -import {DeployImageComponent} from "../deploy-image/deploy-image.component"; -import {LoadingComponent} from "../../../../../shared/loading/loading.component"; -import {FormBuilder, FormsModule, ReactiveFormsModule} from "@angular/forms"; -import {MAT_DIALOG_DATA, MatDialogModule, MatDialogRef} from "@angular/material/dialog"; -import {MatFormFieldModule} from "@angular/material/form-field"; -import {MatInputModule} from "@angular/material/input"; -import {MatCheckboxModule} from "@angular/material/checkbox"; -import {MatExpansionModule} from "@angular/material/expansion"; -import {MatButtonModule} from "@angular/material/button"; -import {MatTableModule} from "@angular/material/table"; -import {MatDividerModule} from "@angular/material/divider"; -import {MatRadioModule} from "@angular/material/radio"; -import {MatSelectModule} from "@angular/material/select"; -import {BrowserAnimationsModule} from "@angular/platform-browser/animations"; -import {ToastrModule, ToastrService} from "ngx-toastr"; -import {TranslateModule} from "@ngx-translate/core"; -import {provideHttpClient} from "@angular/common/http"; -import {provideHttpClientTesting} from "@angular/common/http/testing"; -import {provideRouter} from "@angular/router"; -import {ConfigService} from "@services/config.service"; +import { DeployImageComponent } from "../deploy-image/deploy-image.component"; +import { LoadingComponent } from "../../../../../shared/loading/loading.component"; +import { FormBuilder, FormsModule, ReactiveFormsModule } from "@angular/forms"; +import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from "@angular/material/dialog"; +import { MatFormFieldModule } from "@angular/material/form-field"; +import { MatInputModule } from "@angular/material/input"; +import { MatCheckboxModule } from "@angular/material/checkbox"; +import { MatExpansionModule } from "@angular/material/expansion"; +import { MatButtonModule } from "@angular/material/button"; +import { MatTableModule } from "@angular/material/table"; +import { MatDividerModule } from "@angular/material/divider"; +import { MatRadioModule } from "@angular/material/radio"; +import { MatSelectModule } from "@angular/material/select"; +import { BrowserAnimationsModule } from "@angular/platform-browser/animations"; +import { ToastrModule, ToastrService } from "ngx-toastr"; +import { TranslateModule } from "@ngx-translate/core"; +import { provideHttpClient } from "@angular/common/http"; +import { provideHttpClientTesting } from "@angular/common/http/testing"; +import { provideRouter } from "@angular/router"; +import { ConfigService } from "@services/config.service"; +import { TranslateLoader } from '@ngx-translate/core'; +import { HttpClient } from '@angular/common/http'; +import { TranslateHttpLoader } from '@ngx-translate/http-loader'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; + +export function HttpLoaderFactory(http: HttpClient) { + return new TranslateHttpLoader(http); +} describe('RunScriptAssistantComponent', () => { let component: RunScriptAssistantComponent; @@ -33,7 +41,7 @@ describe('RunScriptAssistantComponent', () => { }; await TestBed.configureTestingModule({ - declarations: [DeployImageComponent, LoadingComponent], + declarations: [RunScriptAssistantComponent, DeployImageComponent, LoadingComponent], imports: [ ReactiveFormsModule, FormsModule, @@ -46,10 +54,18 @@ describe('RunScriptAssistantComponent', () => { MatTableModule, MatDividerModule, MatRadioModule, + MatProgressSpinnerModule, MatSelectModule, BrowserAnimationsModule, ToastrModule.forRoot(), - TranslateModule.forRoot() + HttpClientTestingModule, + TranslateModule.forRoot({ + loader: { + provide: TranslateLoader, + useFactory: HttpLoaderFactory, + deps: [HttpClient] + } + }) ], providers: [ FormBuilder,