@cqa-lib/cqa-ui 1.1.512 → 1.1.514
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/compare-runs/compare-runs.component.mjs +147 -37
- package/esm2020/lib/compare-runs/view-compare-button.component.mjs +18 -9
- package/esm2020/lib/table/dynamic-table/dynamic-table.component.mjs +33 -5
- package/fesm2015/cqa-lib-cqa-ui.mjs +193 -47
- package/fesm2015/cqa-lib-cqa-ui.mjs.map +1 -1
- package/fesm2020/cqa-lib-cqa-ui.mjs +193 -47
- package/fesm2020/cqa-lib-cqa-ui.mjs.map +1 -1
- package/lib/compare-runs/compare-runs.component.d.ts +23 -0
- package/lib/compare-runs/view-compare-button.component.d.ts +3 -1
- package/lib/table/dynamic-table/dynamic-table.component.d.ts +11 -0
- package/package.json +1 -1
- package/styles.css +1 -1
|
@@ -71,11 +71,24 @@ export interface StepComparison {
|
|
|
71
71
|
runBStatus?: 'SUCCESS' | 'FAILURE' | 'ABORTED' | 'NOT_EXECUTED' | 'QUEUED' | 'STOPPED';
|
|
72
72
|
runBDuration?: number;
|
|
73
73
|
change: string;
|
|
74
|
+
/** 1-based row index in full comparison list (test plan table; set by compare-runs). */
|
|
75
|
+
_compareRowOrdinal?: number;
|
|
74
76
|
}
|
|
75
77
|
export interface ComparisonResponse {
|
|
76
78
|
summary: ComparisonSummary;
|
|
77
79
|
stepsComparison: StepComparison[];
|
|
78
80
|
}
|
|
81
|
+
/** Derived counts for test-plan compare summary cards (from step rows). */
|
|
82
|
+
export interface TestPlanCompareCardSummary {
|
|
83
|
+
totalCases: number;
|
|
84
|
+
passed: number;
|
|
85
|
+
failed: number;
|
|
86
|
+
regressions: number;
|
|
87
|
+
fixed: number;
|
|
88
|
+
newSteps: number;
|
|
89
|
+
removed: number;
|
|
90
|
+
noChange: number;
|
|
91
|
+
}
|
|
79
92
|
export interface CompareRequest {
|
|
80
93
|
runAId: number;
|
|
81
94
|
runBId: number;
|
|
@@ -125,6 +138,8 @@ export declare class CompareRunsComponent implements OnInit, OnChanges {
|
|
|
125
138
|
selectedRunB?: RunData;
|
|
126
139
|
comparisonSummary?: ComparisonSummary;
|
|
127
140
|
stepComparisons: StepComparison[];
|
|
141
|
+
/** Populated when test-plan comparison data is loaded; drives summary metric cards. */
|
|
142
|
+
testPlanCardSummary?: TestPlanCompareCardSummary;
|
|
128
143
|
tableColumns: DynamicTableColumn[];
|
|
129
144
|
pageIndex: number;
|
|
130
145
|
pageSize: number;
|
|
@@ -158,12 +173,20 @@ export declare class CompareRunsComponent implements OnInit, OnChanges {
|
|
|
158
173
|
private onTestCaseClick;
|
|
159
174
|
onExportTestPlanCompare(): void;
|
|
160
175
|
private renderChangeChip;
|
|
176
|
+
private renderPriorityChip;
|
|
177
|
+
private isFailureAction;
|
|
178
|
+
private getActionLabel;
|
|
161
179
|
private getRunColumnHeader;
|
|
162
180
|
private renderStatusIcon;
|
|
163
181
|
private getStatusLabel;
|
|
164
182
|
private formatDuration;
|
|
165
183
|
private getResultStatusColor;
|
|
166
184
|
private handleComparisonData;
|
|
185
|
+
/**
|
|
186
|
+
* Builds summary card counts for test-plan compare: pass/fail from Run B vs total;
|
|
187
|
+
* change buckets from `change` (REGRESSION, FIXED, NEW STEP, etc.).
|
|
188
|
+
*/
|
|
189
|
+
private computeTestPlanCardSummary;
|
|
167
190
|
onPageChange(event: {
|
|
168
191
|
pageIndex: number;
|
|
169
192
|
pageSize: number;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class ViewCompareButtonComponent {
|
|
4
|
+
label: string;
|
|
5
|
+
isFailureAction: boolean;
|
|
4
6
|
clicked: EventEmitter<void>;
|
|
5
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<ViewCompareButtonComponent, never>;
|
|
6
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ViewCompareButtonComponent, "cqa-view-compare-button", never, {}, { "clicked": "clicked"; }, never, never>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ViewCompareButtonComponent, "cqa-view-compare-button", never, { "label": "label"; "isFailureAction": "isFailureAction"; }, { "clicked": "clicked"; }, never, never>;
|
|
7
9
|
}
|
|
@@ -20,6 +20,8 @@ export interface DynamicTableColumn {
|
|
|
20
20
|
isShow?: boolean;
|
|
21
21
|
weight?: number;
|
|
22
22
|
fixedPx?: number;
|
|
23
|
+
/** Minimum width in px — applied to both the header cell and every body cell of this column. */
|
|
24
|
+
minWidth?: number;
|
|
23
25
|
responsive?: {
|
|
24
26
|
xs?: boolean;
|
|
25
27
|
sm?: boolean;
|
|
@@ -66,6 +68,15 @@ export declare class DynamicTableComponent implements OnDestroy, OnChanges {
|
|
|
66
68
|
computedData: any[];
|
|
67
69
|
computedGridTemplate: string;
|
|
68
70
|
computedColumnWidths: string[];
|
|
71
|
+
/**
|
|
72
|
+
* Hard floor on the `<table>` width = sum of every visible column's minimum (fixed
|
|
73
|
+
* widths + dynamic columns' `minWidth`). With `table-layout: fixed; width: 100%;` set
|
|
74
|
+
* by consumers, `<col>` widths become advisory once the container is narrower than
|
|
75
|
+
* the column-width sum — the browser silently shrinks them. Pinning `min-width` on
|
|
76
|
+
* the table itself prevents that compaction; the consumer's `overflow-x: auto`
|
|
77
|
+
* wrapper then scrolls horizontally instead of squishing columns to zero width.
|
|
78
|
+
*/
|
|
79
|
+
computedTableMinWidth: number;
|
|
69
80
|
private htmlCache;
|
|
70
81
|
constructor(sanitizer: DomSanitizer, cdr: ChangeDetectorRef);
|
|
71
82
|
ngOnChanges(changes: SimpleChanges): void;
|