X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-frontend%2Fsrc%2Fapp%2Fei-coordinator%2Fjobs-list%2Fjobs-list.component.spec.ts;h=44fcb6ae93567db2ce37bfac9cf9a05b0dfcabc0;hb=5e248c6923681f9a3990aa57da3a0403c100bb57;hp=927ab9d7252dd43c343e1723c8ae07abfba2891e;hpb=01a9b9b679ae518584ab91e3c4b3ef6c6d5c474a;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-frontend/src/app/ei-coordinator/jobs-list/jobs-list.component.spec.ts b/webapp-frontend/src/app/ei-coordinator/jobs-list/jobs-list.component.spec.ts index 927ab9d..44fcb6a 100644 --- a/webapp-frontend/src/app/ei-coordinator/jobs-list/jobs-list.component.spec.ts +++ b/webapp-frontend/src/app/ei-coordinator/jobs-list/jobs-list.component.spec.ts @@ -27,6 +27,7 @@ import { fakeAsync, TestBed, tick, + flushMicrotasks, } from "@angular/core/testing"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { MatFormFieldModule } from "@angular/material/form-field"; @@ -267,7 +268,7 @@ describe("JobsListComponent", () => { .then((loadTable) => { loadTable.getRows().then((jobRows) => { jobRows[0].getCellTextByColumnName().then((value) => { - expect(expectedJobRow).toContain(jasmine.objectContaining(value)); + expect(expectedJobRow).toEqual(jasmine.objectContaining(value)); }); }); }); @@ -285,63 +286,78 @@ describe("JobsListComponent", () => { loader .getHarness(MatInputHarness.with({ selector: "#jobIdFilter" })) .then((idFilter) => { - idFilter.setValue("1"); - loadTable.getRows().then((jobRows) => { - expect(jobRows.length).toEqual(2); - jobRows[0].getCellTextByColumnName().then((value) => { - expect(expectedJob1Row).toContain( - jasmine.objectContaining(value) - ); + tick(10); + idFilter.setValue("1").then((_) => { + tick(10); + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(2); + jobRows[0].getCellTextByColumnName().then((value) => { + expect(expectedJob1Row).toEqual( + jasmine.objectContaining(value) + ); + idFilter.setValue(""); + flushMicrotasks(); + }); }); }); - idFilter.setValue(""); }); + loader .getHarness(MatInputHarness.with({ selector: "#jobTypeIdFilter" })) .then((typeIdFilter) => { - typeIdFilter.setValue("1"); - loadTable.getRows().then((jobRows) => { - expect(jobRows.length).toEqual(2); - jobRows[0].getCellTextByColumnName().then((value) => { - expect(expectedJob1Row).toContain( - jasmine.objectContaining(value) - ); + tick(10); + typeIdFilter.setValue("1").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(2); + jobRows[0].getCellTextByColumnName().then((value) => { + expect(expectedJob1Row).toEqual( + jasmine.objectContaining(value) + ); + typeIdFilter.setValue(""); + flushMicrotasks(); + }); }); }); - typeIdFilter.setValue(""); }); + loader .getHarness(MatInputHarness.with({ selector: "#jobOwnerFilter" })) .then((ownerFilter) => { - ownerFilter.setValue("1"); - loadTable.getRows().then((jobRows) => { - expect(jobRows.length).toEqual(2); - jobRows[0].getCellTextByColumnName().then((value) => { - expect(expectedJob1Row).toContain( - jasmine.objectContaining(value) - ); + tick(10); + ownerFilter.setValue("1").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(2); + jobRows[0].getCellTextByColumnName().then((value) => { + expect(expectedJob1Row).toEqual( + jasmine.objectContaining(value) + ); + ownerFilter.setValue(""); + flushMicrotasks(); + }); }); }); - ownerFilter.setValue(""); }); + loader .getHarness( MatInputHarness.with({ selector: "#jobTargetUriFilter" }) ) .then((targetUriFilter) => { - targetUriFilter.setValue("1"); - loadTable.getRows().then((jobRows) => { - expect(jobRows.length).toEqual(2); - jobRows[0].getCellTextByColumnName().then((value) => { - expect(expectedJob1Row).toContain( - jasmine.objectContaining(value) - ); + tick(10); + targetUriFilter.setValue("one").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(2); + jobRows[0].getCellTextByColumnName().then((value) => { + expect(expectedJob1Row).toEqual( + jasmine.objectContaining(value) + ); + targetUriFilter.setValue(""); + flushMicrotasks(); + }); }); }); - targetUriFilter.setValue(""); }); }); - discardPeriodicTasks(); })); @@ -417,6 +433,90 @@ describe("JobsListComponent", () => { }); discardPeriodicTasks(); })); + + it("should not sort when clicking on filtering box", fakeAsync(() => { + const expectedJobRow = { + jobId: "job1", + prodId: "producer2", + typeId: "type1", + owner: "owner1", + targetUri: "http://one", + }; + + setServiceSpy(); + component.ngOnInit(); + tick(0); + + loader + .getHarness(MatTableHarness.with({ selector: "#jobsTable" })) + .then((loadTable) => { + loader + .getHarness(MatInputHarness.with({ selector: "#jobIdFilter" })) + .then((idFilter) => { + tick(10); + idFilter.setValue("").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(4); + jobRows[2].getCellTextByColumnName().then((value) => { + expect(expectedJobRow).toEqual( + jasmine.objectContaining(value) + ); + }); + }); + }); + }); + loader + .getHarness( + MatInputHarness.with({ selector: "#jobTypeIdFilter" }) + ) + .then((typeIdFilter) => { + tick(10); + typeIdFilter.setValue("").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(4); + jobRows[2].getCellTextByColumnName().then((value) => { + expect(expectedJobRow).toEqual( + jasmine.objectContaining(value) + ); + }); + }); + }); + }); + loader + .getHarness(MatInputHarness.with({ selector: "#jobOwnerFilter" })) + .then((ownerFilter) => { + tick(10); + ownerFilter.setValue("").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(4); + jobRows[2].getCellTextByColumnName().then((value) => { + expect(expectedJobRow).toEqual( + jasmine.objectContaining(value) + ); + }); + }); + }); + }); + loader + .getHarness( + MatInputHarness.with({ selector: "#jobTargetUriFilter" }) + ) + .then((targetUriFilter) => { + tick(10); + targetUriFilter.setValue("").then((_) => { + loadTable.getRows().then((jobRows) => { + expect(jobRows.length).toEqual(4); + jobRows[2].getCellTextByColumnName().then((value) => { + expect(expectedJobRow).toEqual( + jasmine.objectContaining(value) + ); + }); + }); + }); + }); + }); + discardPeriodicTasks(); + })); }); describe("#paging", () => { @@ -459,7 +559,6 @@ describe("JobsListComponent", () => { }); }); }); - discardPeriodicTasks(); })); });