• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IgniteUI / igniteui-angular / 13287444581

12 Feb 2025 02:18PM UTC coverage: 10.56% (-81.0%) from 91.606%
13287444581

Pull #15359

github

web-flow
Merge a24969adb into 32cfe83f6
Pull Request #15359: fix(time-picker): exclude from SSR toggle events #15135

933 of 15233 branches covered (6.12%)

3037 of 28759 relevant lines covered (10.56%)

352.42 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

69.23
/projects/igniteui-angular/src/lib/data-operations/test-util/data-generator.ts
1
import { GridColumnDataType } from '../data-util';
2

3
/**
4
 * @hidden
5
 */
6
const COUNT_ROWS = 5;
2✔
7

8
/**
9
 * @hidden
10
 */
11
const COUNT_COLS = 4;
2✔
12

13
/**
14
 * @hidden
15
 */
16
export interface IDataColumn {
17
    fieldName: string;
18
    type: GridColumnDataType;
19
}
20

21
/**
22
 * @hidden
23
 */
24
export class DataGenerator {
25
    public columns: IDataColumn[] = [];
4✔
26
    public data: any[] = [];
4✔
27
    constructor(countRows = COUNT_ROWS, countCols = COUNT_COLS) {
8✔
28
        this.columns = this.generateColumns(countCols);
4✔
29
        this.data = this.generateData(countRows);
4✔
30
    }
31
    public generateArray(startValue, endValue) {
32
        const len = Math.abs(startValue - endValue);
×
33
        const decrement = startValue > endValue;
×
34
        return Array.from({ length: len + 1 }, (e, i) => decrement ? startValue - i : startValue + i);
×
35
    }
36
    public getValuesForColumn(data, fieldName) {
37
        return data.map((x) => x[fieldName]);
×
38
    }
39
    public getGroupRecords(data) {
40
        return data.map((x) => x['groupParent']);
×
41
    }
42
    public isSuperset(haystack, arr) {
43
        return arr.every((val) => haystack.indexOf(val) >= 0);
×
44
    }
45
    private generateColumns(countCols): IDataColumn[] {
46
        let i: number;
47
        const defaultColumns: IDataColumn[] = [
4✔
48
            {
49
                fieldName: 'number',
50
                type: GridColumnDataType.Number
51
            },
52
            {
53
                fieldName: 'string',
54
                type: GridColumnDataType.String
55
            },
56
            {
57
                fieldName: 'date',
58
                type: GridColumnDataType.Date
59
            },
60
            {
61
                fieldName: 'boolean',
62
                type: GridColumnDataType.Boolean
63
            }
64
        ];
65
        if (countCols <= 0) {
4!
66
            return defaultColumns;
×
67
        }
68
        if (countCols <= defaultColumns.length) {
4✔
69
            return defaultColumns.slice(0, countCols);
4✔
70
        }
71
        const len = countCols - defaultColumns.length;
×
72
        const res = defaultColumns;
×
73
        for (i = 0; i < len; i++) {
×
74
            res.push({
×
75
                fieldName: `col${i}`,
76
                type: GridColumnDataType.String
77
            });
78
        }
79
        return res;
×
80
    }
81
    private generateData(countRows: number) {
82
        let i;
83
        let j;
84
        let rec;
85
        let val;
86
        let col;
87
        const data = [];
4✔
88
        for (i = 0; i < countRows; i++) {
4✔
89
            rec = {};
20✔
90
            for (j = 0; j < this.columns.length; j++) {
20✔
91
                col = this.columns[j];
80✔
92
                switch (col.type) {
80✔
93
                    case GridColumnDataType.Number:
94
                        val = i;
20✔
95
                        break;
20✔
96
                    case GridColumnDataType.Date:
97
                        val = new Date(Date.now() + i * 24 * 60 * 60 * 1000);
20✔
98
                        break;
20✔
99
                    case GridColumnDataType.Boolean:
100
                        val = !!(i % 2);
20✔
101
                        break;
20✔
102
                    default:
103
                        val = `row${i}, col${j}`;
20✔
104
                        break;
20✔
105
                }
106
                rec[col.fieldName] = val;
80✔
107
            }
108
            data.push(rec);
20✔
109
        }
110
        return data;
4✔
111
    }
112
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc