Skip to content

Commit 20436fa

Browse files
Added test bulk deletion
1 parent 7fe7d0b commit 20436fa

File tree

4 files changed

+25
-4
lines changed

4 files changed

+25
-4
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "aquality-tracking-ui",
3-
"version": "1.4.3",
3+
"version": "1.4.4",
44
"scripts": {
55
"ng": "ng",
66
"start": "ng serve",

src/app/pages/project/suite/suite-view/testsuite.view.component.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ <h2 class="pull-left" id="suite-view">Test Suite:</h2>
6363
<div class="panel-body">
6464
<table-filter id="test-table" *ngIf="tbCols && testSuite && testSuite.tests" #table [rowsOnPageSet]="[5,10,20]"
6565
[rowsOnPage]="20" [queryParams]="true" [data]="testSuite.tests" [columns]="tbCols"
66-
[defaultSortBy]="sortBy" [allowDelete]="allowEdit" [allowBulkUpdate]="allowEdit"
67-
(rowClick)="rowClicked($event)" (dataChange)="testUpdate($event)" (action)="handleAction($event)"
68-
(bulkChanges)="bulkUpdate($event)"></table-filter>
66+
[defaultSortBy]="sortBy" [allowDelete]="allowEdit" [allowBulkUpdate]="allowEdit" [allowBulkDelete]="allowDelete"
67+
(bulkDelete)="bulkDelete($event)" (rowClick)="rowClicked($event)" (dataChange)="testUpdate($event)"
68+
(action)="handleAction($event)" (bulkChanges)="bulkUpdate($event)"></table-filter>
6969
</div>

src/app/pages/project/suite/suite-view/testsuite.view.component.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ export class TestSuiteViewComponent implements OnInit {
4040
totalManualDuration: string;
4141
users: LocalPermissions[];
4242
tbCols: TFColumn[];
43+
allowDelete: boolean;
4344
allowEdit: boolean;
4445
projectId: number;
4546
allowCreation: boolean;
@@ -82,6 +83,9 @@ export class TestSuiteViewComponent implements OnInit {
8283
this.selectedTestSuite = this.testSuites.find((x) => x.id === suiteId);
8384
}
8485

86+
this.allowDelete = await this.permissions.hasProjectPermissions(this.projectId,
87+
[EGlobalPermissions.manager], [ELocalPermissions.manager, ELocalPermissions.admin]);
88+
8589
this.allowEdit = await this.permissions.hasProjectPermissions(
8690
this.projectId,
8791
[EGlobalPermissions.manager],
@@ -211,6 +215,11 @@ export class TestSuiteViewComponent implements OnInit {
211215
this.calculateManualDuration();
212216
}
213217

218+
bulkDelete(tests: Test[]) {
219+
this.testService.removeTests(tests);
220+
this.testSuite.tests = this.testSuite.tests.filter(x => !tests.find(y => y.id === x.id));
221+
}
222+
214223
updateSuite() {
215224
const updTemplate: TestSuite = {
216225
name: this.testSuite.name,

src/app/services/test/test.service.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,18 @@ export class TestService extends BaseHttpService {
6262
this.handleSuccess(`Test '${test.name}' was deleted.`);
6363
}
6464

65+
async removeTests(tests: Test[]) {
66+
const deleteRequests = tests.map(test =>
67+
this.http.delete(`/test`, {
68+
params: { id: test.id.toString(), project_id: test.project_id.toString() }
69+
}).toPromise()
70+
);
71+
72+
await Promise.all(deleteRequests);
73+
74+
this.handleSuccess(`All selected tests were deleted.`);
75+
}
76+
6577
public getResultWeights(): { value: number, weight: number } [] {
6678
return [
6779
{ value: 5, weight: 0 },

0 commit comments

Comments
 (0)