Skip to content

Commit bde10e2

Browse files
authored
Merge pull request swimlane#1260 from dlorych/master
Added tests accessing array elements through prop getter
2 parents 67b34c5 + dad4798 commit bde10e2

File tree

4 files changed

+220
-0
lines changed

4 files changed

+220
-0
lines changed

config/karma.conf.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
const testWebpackConfig = require('./webpack.test');
2+
process.env.CHROME_BIN = require('puppeteer').executablePath()
23

34
module.exports = function(config) {
45
var configuration = {
@@ -24,6 +25,10 @@ module.exports = function(config) {
2425
ChromeTravisCi: {
2526
base: 'Chrome',
2627
flags: ['--no-sandbox']
28+
},
29+
ChromeHeadlessNoSandbox: {
30+
base: 'ChromeHeadless',
31+
flags: ['--no-sandbox']
2732
}
2833
},
2934
coverageReporter: {

package-lock.json

Lines changed: 170 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@
113113
"postcss": "^5.2.11",
114114
"postcss-loader": "^1.2.2",
115115
"protractor": "^5.2.0",
116+
"puppeteer": "^1.0.0",
116117
"replace": "^0.3.0",
117118
"rimraf": "^2.6.2",
118119
"rxjs": "^5.5.2",

src/utils/column-prop-getters.spec.ts

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,4 +50,48 @@ describe('deepValueGetter', () => {
5050
expect(deepValueGetter(data, 'a.b.value')).toEqual(5);
5151
});
5252

53+
it('should get array-element two-level deep', () => {
54+
let data = {
55+
a: {
56+
b: [
57+
123
58+
]
59+
}
60+
};
61+
expect(deepValueGetter(data, 'a.b.0')).toEqual(123);
62+
63+
});
64+
65+
it('should get value of object inside an array-element', () => {
66+
let data = {
67+
a: {
68+
b: [
69+
{c: 123}
70+
]
71+
}
72+
};
73+
expect(deepValueGetter(data, 'a.b.0.c')).toEqual(123);
74+
});
75+
it('should get value of object inside a double array-element', () => {
76+
let data = {
77+
a: {
78+
b: [
79+
[
80+
123
81+
]
82+
]
83+
}
84+
};
85+
expect(deepValueGetter(data, 'a.b.0.0')).toEqual(123);
86+
});
87+
88+
89+
it('should check for root-level fields with square brackets in name', () => {
90+
let data = {
91+
'a.b.1.value': 5
92+
};
93+
expect(deepValueGetter(data, 'a.b.1.value')).toEqual(5);
94+
});
95+
96+
5397
});

0 commit comments

Comments
 (0)