X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=portal-FE-os%2Fsrc%2Fapp%2Fpages%2Fapplication-onboarding%2Fapplication-details-dialog%2Fapplication-details-dialog.component.spec.ts;h=d1f352cbc52ae74220de7188b4e56c7a26aed3dd;hb=a36db1a18f3d5117517313ba035e2384e00cc0a7;hp=0ea27629d16c93865311b874be51dbdf026d1064;hpb=099ece77f49e4a6bc4d9b35ef03a5e0f33bf8384;p=portal.git diff --git a/portal-FE-os/src/app/pages/application-onboarding/application-details-dialog/application-details-dialog.component.spec.ts b/portal-FE-os/src/app/pages/application-onboarding/application-details-dialog/application-details-dialog.component.spec.ts index 0ea27629..d1f352cb 100644 --- a/portal-FE-os/src/app/pages/application-onboarding/application-details-dialog/application-details-dialog.component.spec.ts +++ b/portal-FE-os/src/app/pages/application-onboarding/application-details-dialog/application-details-dialog.component.spec.ts @@ -39,25 +39,98 @@ import { async, ComponentFixture, TestBed } from '@angular/core/testing'; import { ApplicationDetailsDialogComponent } from './application-details-dialog.component'; +import { NgMaterialModule } from 'src/app/ng-material-module'; +import { FormsModule } from '@angular/forms'; +import { NgbActiveModal, NgbModal, NgbModule } from '@ng-bootstrap/ng-bootstrap'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { IApplications } from 'src/app/shared/model/applications-onboarding/applications'; +import { InformationModalComponent } from 'src/app/modals/information-modal/information-modal.component'; +import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing'; +import { NgbModalBackdrop } from '@ng-bootstrap/ng-bootstrap/modal/modal-backdrop'; +import { ConfirmationModalComponent } from 'src/app/modals/confirmation-modal/confirmation-modal.component'; +import { InformationTooltipComponent } from '../../information-tooltip/information-tooltip.component'; +import { MatTooltipModule } from '@angular/material'; +import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; + describe('ApplicationDetailsDialogComponent', () => { let component: ApplicationDetailsDialogComponent; let fixture: ComponentFixture; + const applicationObj: IApplications = {"id":"testID"}; beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ ApplicationDetailsDialogComponent ] - }) + declarations: [ ApplicationDetailsDialogComponent,InformationModalComponent,ConfirmationModalComponent, InformationTooltipComponent], + imports: [NgMaterialModule,FormsModule,HttpClientTestingModule,NgbModule.forRoot(), MatTooltipModule], + providers: [NgbActiveModal], + schemas: [CUSTOM_ELEMENTS_SCHEMA] + }).overrideModule(BrowserDynamicTestingModule, { set: { entryComponents: [InformationModalComponent,ConfirmationModalComponent] } }) .compileComponents(); })); beforeEach(() => { fixture = TestBed.createComponent(ApplicationDetailsDialogComponent); component = fixture.componentInstance; + component.applicationObj = applicationObj; fixture.detectChanges(); }); it('should create', () => { expect(component).toBeTruthy(); }); + it('removeImage should return stubbed value', () => { + spyOn(component, 'removeImage').and.callThrough(); + component.removeImage(); + expect(component.removeImage).toHaveBeenCalledWith(); + }); + it('saveChanges should return stubbed value', () => { + component.applicationObj.rolesInAAF = true; + component.applicationObj.isEnabled = false; + spyOn(component, 'saveChanges').and.callThrough(); + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + component.applicationObj.isEnabled = true; + component.applicationObj.landingPage = 'www.test.com' + component.applicationObj.restrictedApp =true; + + //spyOn(component, 'saveChanges').and.callThrough(); + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + component.applicationObj.rolesInAAF = false; + component.applicationObj.landingPage = 'test' + component.applicationObj.restrictedApp =false; + component.applicationObj.isOpen = true; + component.isEditMode =true; + //spyOn(component, 'saveChanges').and.callThrough(); + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + }); + it('saveChanges Central Auth is disabled', () => { + component.applicationObj.rolesInAAF = false; + component.applicationObj.isEnabled = false; + spyOn(component, 'saveChanges').and.callThrough(); + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + component.applicationObj.isEnabled = true; + component.applicationObj.restrictedApp = true; + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + + }); + + it('saveChanges URL validation changes', () => { + component.applicationObj.rolesInAAF = true; + component.applicationObj.isEnabled = true; + component.applicationObj.appName ='test'; + component.applicationObj.landingPage = 'https://www.test.com' + component.applicationObj.appBasicAuthUsername ='test' + component.applicationObj.nameSpace ='ONAP' + spyOn(component, 'saveChanges').and.callThrough(); + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + component.applicationObj.restrictedApp = false; + component.isEditMode = true; + component.saveChanges(); + expect(component.saveChanges).toHaveBeenCalledWith(); + }); });