Skip to content

Commit 77b3261

Browse files
authored
feat(build): lighter/faster build (#58)
* wip * yarn lock * upgrade deps * clarify connect * done
1 parent 202a2e4 commit 77b3261

17 files changed

+160
-761
lines changed

__tests__/internals/reducer/generateReducer/__snapshots__/getReducerCases.test.js.snap

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,6 @@ Object {
6161
},
6262
},
6363
"resources": Object {
64-
"animals": Object {
65-
"1": "worm",
66-
},
6764
"fruits": Object {
6865
"1": "banana",
6966
"2": "cherry",
@@ -132,9 +129,6 @@ Object {
132129
},
133130
},
134131
"resources": Object {
135-
"animals": Object {
136-
"1": "worm",
137-
},
138132
"fruits": Object {
139133
"1": "banana",
140134
"2": "cherry",
@@ -207,9 +201,6 @@ Object {
207201
},
208202
},
209203
"resources": Object {
210-
"animals": Object {
211-
"1": "worm",
212-
},
213204
"fruits": Object {
214205
"1": "banana",
215206
"2": "cherry",
@@ -278,9 +269,6 @@ Object {
278269
},
279270
},
280271
"resources": Object {
281-
"animals": Object {
282-
"1": "worm",
283-
},
284272
"fruits": Object {
285273
"1": "banana",
286274
"2": "cherry",
@@ -636,9 +624,6 @@ Object {
636624
},
637625
},
638626
"resources": Object {
639-
"animals": Object {
640-
"1": "worm",
641-
},
642627
"fruits": Object {
643628
"1": "banana",
644629
"2": "cherry",
@@ -725,9 +710,6 @@ Object {
725710
},
726711
},
727712
"resources": Object {
728-
"animals": Object {
729-
"1": "worm",
730-
},
731713
"fruits": Object {
732714
"1": "banana",
733715
"2": "cherry",
@@ -872,9 +854,6 @@ Object {
872854
},
873855
},
874856
"resources": Object {
875-
"animals": Object {
876-
"1": "worm",
877-
},
878857
"fruits": undefined,
879858
"seeds": Object {
880859
"2": "pumpkin",

__tests__/internals/utils/__snapshots__/mergeResources.test.js.snap

Lines changed: 25 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,38 @@
11
// Jest Snapshot v1, https://goo.gl/fbAQLP
22

3-
exports[`mergeResources merge empty in filled 1`] = `
3+
exports[`mergeResources happy path 1`] = `
44
Object {
5-
"fruits": Object {
6-
"apple": Object {
7-
"juicy": true,
8-
"red": true,
9-
},
10-
"cherry": Object {
11-
"juicy": false,
12-
},
13-
},
14-
"vegetables": Object {
15-
"carrot": Object {
16-
"orange": true,
5+
"eggs": Object {
6+
"1": Object {
7+
"a": 2,
178
},
189
},
19-
}
20-
`;
21-
22-
exports[`mergeResources merge filled in empty 1`] = `
23-
Object {
2410
"fruits": Object {
25-
"apple": Object {
26-
"juicy": true,
27-
"red": true,
28-
},
29-
"cherry": Object {
30-
"juicy": false,
31-
},
32-
},
33-
"vegetables": Object {
34-
"carrot": Object {
35-
"orange": true,
36-
},
37-
},
38-
}
39-
`;
40-
41-
exports[`mergeResources merge filled2 in filled 1`] = `
42-
Object {
43-
"fruits": Object {
44-
"apple": Object {
45-
"juicy": false,
46-
},
47-
"banana": Object {
48-
"yellow": true,
11+
"1": Object {
12+
"a": 1,
4913
},
50-
"cherry": Object {
51-
"juicy": false,
14+
"2": Object {
15+
"c": 3,
5216
},
5317
},
5418
"vegetables": Object {
55-
"carrot": Object {
56-
"orange": true,
19+
"1": Object {
20+
"a": 1,
21+
"b": 2,
22+
"c": 3,
23+
},
24+
"2": Object {
25+
"a": 1,
26+
"b": 2,
27+
"c": 3,
28+
},
29+
"3": Object {
30+
"a": 1,
31+
"b": 2,
32+
"c": 3,
33+
},
34+
"4": Object {
35+
"a": 1,
5736
},
5837
},
5938
}

__tests__/internals/utils/__snapshots__/shallowMergeResources.test.js.snap

Lines changed: 0 additions & 39 deletions
This file was deleted.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import isPlainObject from '../../../src/internals/utils/isPlainObject';
2+
3+
describe('isPlainObject', () => {
4+
test('not plain objects', () => {
5+
expect(isPlainObject()).toBe(false);
6+
expect(isPlainObject(null)).toBe(false);
7+
expect(isPlainObject(false)).toBe(false);
8+
expect(isPlainObject(true)).toBe(false);
9+
expect(isPlainObject(0)).toBe(false);
10+
expect(isPlainObject(1)).toBe(false);
11+
expect(isPlainObject(-1)).toBe(false);
12+
expect(isPlainObject('')).toBe(false);
13+
expect(isPlainObject('hello')).toBe(false);
14+
expect(isPlainObject([])).toBe(false);
15+
expect(isPlainObject([''])).toBe(false);
16+
expect(isPlainObject([0])).toBe(false);
17+
});
18+
19+
test('plain objects', () => {
20+
expect(isPlainObject({})).toBe(true);
21+
expect(isPlainObject({ a: 1 })).toBe(true);
22+
});
23+
});
Lines changed: 52 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,75 @@
11
import mergeResources from '../../../src/internals/utils/mergeResources';
22

3-
const EMPTY_STATE = {};
4-
const FILLED_STATE = {
3+
const PREVIOUS_STATE = {
54
resources: {
5+
eggs: {
6+
1: {
7+
a: 1,
8+
},
9+
},
610
fruits: {
7-
apple: {
8-
juicy: true,
9-
red: true,
11+
1: {
12+
a: 1,
13+
b: 2,
1014
},
11-
cherry: {
12-
juicy: false,
15+
2: {
16+
a: 1,
17+
b: 2,
1318
},
1419
},
1520
vegetables: {
16-
carrot: {
17-
orange: true,
21+
1: {
22+
a: 1,
23+
b: 2,
24+
c: 3,
25+
},
26+
2: {
27+
a: 1,
28+
b: 2,
29+
c: 3,
30+
},
31+
3: {
32+
a: 1,
33+
b: 2,
34+
c: 3,
1835
},
1936
},
2037
},
2138
};
22-
const FILLED_STATE2 = {
23-
resources: {
24-
fruits: {
25-
apple: {
26-
juicy: false,
27-
},
28-
banana: {
29-
yellow: true,
30-
},
39+
40+
const NORMALIZED_PAYLOAD = {
41+
eggs: {
42+
1: {
43+
a: 2,
44+
},
45+
},
46+
fruits: {
47+
1: {
48+
a: 1,
49+
},
50+
2: {
51+
c: 3,
52+
},
53+
},
54+
vegetables: {
55+
4: {
56+
a: 1,
3157
},
3258
},
3359
};
3460

3561
describe('mergeResources', () => {
36-
test('merge filled in empty', () => {
37-
expect(
38-
mergeResources(EMPTY_STATE, FILLED_STATE.resources),
39-
).toMatchSnapshot();
40-
});
41-
42-
test('merge empty in filled', () => {
43-
expect(
44-
mergeResources(FILLED_STATE, EMPTY_STATE.resources),
45-
).toMatchSnapshot();
62+
test('bad arguments', () => {
63+
expect(Object.keys(mergeResources()).length).toBe(0);
64+
expect(mergeResources(PREVIOUS_STATE)).toBe(PREVIOUS_STATE.resources);
65+
expect(mergeResources(PREVIOUS_STATE, null)).toBe(PREVIOUS_STATE.resources);
66+
expect(mergeResources(PREVIOUS_STATE, 1)).toBe(PREVIOUS_STATE.resources);
67+
expect(mergeResources(PREVIOUS_STATE, {})).toBe(PREVIOUS_STATE.resources);
4668
});
4769

48-
test('merge filled2 in filled', () => {
70+
test('happy path', () => {
4971
expect(
50-
mergeResources(FILLED_STATE, FILLED_STATE2.resources),
72+
mergeResources(PREVIOUS_STATE, NORMALIZED_PAYLOAD),
5173
).toMatchSnapshot();
5274
});
5375
});

__tests__/internals/utils/shallowMergeResources.test.js

Lines changed: 0 additions & 67 deletions
This file was deleted.

0 commit comments

Comments
 (0)