@jamashita/lluvia-sequence 2.4.1 → 2.7.0
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/dist/cjs/ASequence.d.ts +9 -8
- package/dist/cjs/ASequence.d.ts.map +1 -1
- package/dist/cjs/ASequence.js +33 -33
- package/dist/cjs/ASequence.js.map +1 -1
- package/dist/cjs/ImmutableSequence.d.ts +4 -5
- package/dist/cjs/ImmutableSequence.d.ts.map +1 -1
- package/dist/cjs/ImmutableSequence.js +0 -1
- package/dist/cjs/ImmutableSequence.js.map +1 -1
- package/dist/cjs/MutableSequence.d.ts +7 -8
- package/dist/cjs/MutableSequence.d.ts.map +1 -1
- package/dist/cjs/MutableSequence.js +3 -4
- package/dist/cjs/MutableSequence.js.map +1 -1
- package/dist/cjs/ReadonlySequence.d.ts +2 -1
- package/dist/cjs/ReadonlySequence.d.ts.map +1 -1
- package/dist/cjs/Sequence.d.ts +1 -1
- package/dist/cjs/Sequence.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/{Mock → mock}/MockSequence.d.ts +1 -2
- package/dist/cjs/mock/MockSequence.d.ts.map +1 -0
- package/dist/cjs/{Mock → mock}/MockSequence.js +0 -1
- package/dist/cjs/mock/MockSequence.js.map +1 -0
- package/dist/esm/ASequence.d.ts +9 -8
- package/dist/esm/ASequence.d.ts.map +1 -1
- package/dist/esm/ASequence.js +33 -33
- package/dist/esm/ASequence.js.map +1 -1
- package/dist/esm/ImmutableSequence.d.ts +4 -5
- package/dist/esm/ImmutableSequence.d.ts.map +1 -1
- package/dist/esm/ImmutableSequence.js +0 -1
- package/dist/esm/ImmutableSequence.js.map +1 -1
- package/dist/esm/MutableSequence.d.ts +7 -8
- package/dist/esm/MutableSequence.d.ts.map +1 -1
- package/dist/esm/MutableSequence.js +3 -4
- package/dist/esm/MutableSequence.js.map +1 -1
- package/dist/esm/ReadonlySequence.d.ts +2 -1
- package/dist/esm/ReadonlySequence.d.ts.map +1 -1
- package/dist/esm/Sequence.d.ts +1 -1
- package/dist/esm/Sequence.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{Mock → mock}/MockSequence.d.ts +1 -2
- package/dist/esm/mock/MockSequence.d.ts.map +1 -0
- package/dist/esm/{Mock → mock}/MockSequence.js +0 -1
- package/dist/esm/mock/MockSequence.js.map +1 -0
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +6 -7
- package/src/ASequence.ts +48 -48
- package/src/ImmutableSequence.ts +19 -21
- package/src/MutableSequence.ts +16 -18
- package/src/ReadonlySequence.ts +3 -1
- package/src/Sequence.ts +1 -1
- package/src/__tests__/ASequence.spec.ts +129 -131
- package/src/__tests__/ImmutableSequence.spec.ts +108 -162
- package/src/__tests__/MutableSequence.spec.ts +93 -143
- package/src/index.ts +1 -1
- package/src/{Mock → mock}/MockSequence.ts +1 -3
- package/dist/cjs/Mock/MockSequence.d.ts.map +0 -1
- package/dist/cjs/Mock/MockSequence.js.map +0 -1
- package/dist/esm/Mock/MockSequence.d.ts.map +0 -1
- package/dist/esm/Mock/MockSequence.js.map +0 -1
@@ -5,20 +5,18 @@ import { ImmutableSequence } from '../ImmutableSequence';
|
|
5
5
|
describe('ImmutableSequence', () => {
|
6
6
|
describe('of', () => {
|
7
7
|
it('returns copied collection, does not use the same one', () => {
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
new MockValueObject<number>(1),
|
12
|
-
new MockValueObject<number>(2)
|
8
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
9
|
+
new MockValueObject(1),
|
10
|
+
new MockValueObject(2)
|
13
11
|
]);
|
14
|
-
const copied: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.of
|
12
|
+
const copied: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.of(sequence);
|
15
13
|
|
16
14
|
expect(sequence.size()).toBe(copied.size());
|
17
15
|
sequence.forEach((v: MockValueObject<number>, k: number) => {
|
18
16
|
expect(v).toBe(copied.get(k));
|
19
17
|
});
|
20
18
|
|
21
|
-
sequence.add(new MockValueObject
|
19
|
+
sequence.add(new MockValueObject(3));
|
22
20
|
|
23
21
|
expect(sequence.size()).toBe(copied.size());
|
24
22
|
});
|
@@ -26,25 +24,21 @@ describe('ImmutableSequence', () => {
|
|
26
24
|
|
27
25
|
describe('ofArray', () => {
|
28
26
|
it('returns ImmutableSequence.empty() when the size is 0', () => {
|
29
|
-
|
30
|
-
|
31
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([]);
|
27
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([]);
|
32
28
|
|
33
29
|
expect(sequence.isEmpty()).toBe(true);
|
34
|
-
expect(sequence).toBe(ImmutableSequence.empty
|
30
|
+
expect(sequence).toBe(ImmutableSequence.empty());
|
35
31
|
});
|
36
32
|
|
37
33
|
it('returns instance', () => {
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
new MockValueObject<number>(1),
|
42
|
-
new MockValueObject<number>(3)
|
34
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
35
|
+
new MockValueObject(1),
|
36
|
+
new MockValueObject(3)
|
43
37
|
]);
|
44
|
-
const sequence2: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
45
|
-
new MockValueObject
|
46
|
-
new MockValueObject
|
47
|
-
new MockValueObject
|
38
|
+
const sequence2: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
39
|
+
new MockValueObject(2),
|
40
|
+
new MockValueObject(4),
|
41
|
+
new MockValueObject(5)
|
48
42
|
]);
|
49
43
|
|
50
44
|
expect(sequence1.size()).toBe(2);
|
@@ -54,26 +48,20 @@ describe('ImmutableSequence', () => {
|
|
54
48
|
|
55
49
|
describe('empty', () => {
|
56
50
|
it('returns singleton instance', () => {
|
57
|
-
expect.
|
58
|
-
|
59
|
-
expect(ImmutableSequence.empty<MockValueObject<number>>()).toBe(ImmutableSequence.empty<MockValueObject<string>>());
|
51
|
+
expect(ImmutableSequence.empty()).toBe(ImmutableSequence.empty());
|
60
52
|
});
|
61
53
|
|
62
54
|
it('always returns 0-size array', () => {
|
63
|
-
expect.
|
64
|
-
|
65
|
-
expect(ImmutableSequence.empty<MockValueObject<number>>().isEmpty()).toBe(true);
|
55
|
+
expect(ImmutableSequence.empty().isEmpty()).toBe(true);
|
66
56
|
});
|
67
57
|
});
|
68
58
|
|
69
59
|
describe('add', () => {
|
70
60
|
it('can extend immutably', () => {
|
71
|
-
|
72
|
-
|
73
|
-
const value1: MockValueObject<number> = new MockValueObject<number>(1);
|
74
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
61
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
62
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
75
63
|
|
76
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.empty
|
64
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.empty();
|
77
65
|
|
78
66
|
expect(sequence1.size()).toBe(0);
|
79
67
|
|
@@ -99,14 +87,12 @@ describe('ImmutableSequence', () => {
|
|
99
87
|
|
100
88
|
describe('set', () => {
|
101
89
|
it('can be set the value into first position', () => {
|
102
|
-
|
103
|
-
|
104
|
-
const
|
105
|
-
const
|
106
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
107
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
90
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
91
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
92
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
93
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
108
94
|
|
109
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
95
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
110
96
|
value1,
|
111
97
|
value2,
|
112
98
|
value3
|
@@ -122,14 +108,12 @@ describe('ImmutableSequence', () => {
|
|
122
108
|
});
|
123
109
|
|
124
110
|
it('can be set the value into middle position', () => {
|
125
|
-
|
111
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
112
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
113
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
114
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
126
115
|
|
127
|
-
const
|
128
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
129
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
130
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
131
|
-
|
132
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
116
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
133
117
|
value1,
|
134
118
|
value2,
|
135
119
|
value3
|
@@ -145,14 +129,12 @@ describe('ImmutableSequence', () => {
|
|
145
129
|
});
|
146
130
|
|
147
131
|
it('can be set the value into last position', () => {
|
148
|
-
|
149
|
-
|
150
|
-
const
|
151
|
-
const
|
152
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
153
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
132
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
133
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
134
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
135
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
154
136
|
|
155
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
137
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
156
138
|
value1,
|
157
139
|
value2,
|
158
140
|
value3
|
@@ -168,14 +150,12 @@ describe('ImmutableSequence', () => {
|
|
168
150
|
});
|
169
151
|
|
170
152
|
it('returns itself when given key is less than 0', () => {
|
171
|
-
|
153
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
154
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
155
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
156
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
172
157
|
|
173
|
-
const
|
174
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
175
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
176
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
177
|
-
|
178
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
158
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
179
159
|
value1,
|
180
160
|
value2,
|
181
161
|
value3
|
@@ -186,14 +166,12 @@ describe('ImmutableSequence', () => {
|
|
186
166
|
});
|
187
167
|
|
188
168
|
it('returns itself when given key is greater than sequence length', () => {
|
189
|
-
|
190
|
-
|
191
|
-
const
|
192
|
-
const
|
193
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
194
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
169
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
170
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
171
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
172
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
195
173
|
|
196
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
174
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
197
175
|
value1,
|
198
176
|
value2,
|
199
177
|
value3
|
@@ -205,14 +183,12 @@ describe('ImmutableSequence', () => {
|
|
205
183
|
});
|
206
184
|
|
207
185
|
it('returns itself when given key is not integer', () => {
|
208
|
-
|
186
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
187
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
188
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
189
|
+
const value4: MockValueObject<number> = new MockValueObject(4);
|
209
190
|
|
210
|
-
const
|
211
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
212
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
213
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(4);
|
214
|
-
|
215
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
191
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
216
192
|
value1,
|
217
193
|
value2,
|
218
194
|
value3
|
@@ -226,13 +202,11 @@ describe('ImmutableSequence', () => {
|
|
226
202
|
|
227
203
|
describe('remove', () => {
|
228
204
|
it('can remove retaining value if it contains', () => {
|
229
|
-
|
230
|
-
|
231
|
-
const
|
232
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
233
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
205
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
206
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
207
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
234
208
|
|
235
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
209
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
236
210
|
value1,
|
237
211
|
value2,
|
238
212
|
value3
|
@@ -248,13 +222,11 @@ describe('ImmutableSequence', () => {
|
|
248
222
|
});
|
249
223
|
|
250
224
|
it('removes middle value', () => {
|
251
|
-
|
252
|
-
|
253
|
-
const
|
254
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
255
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
225
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
226
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
227
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
256
228
|
|
257
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
229
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
258
230
|
value1,
|
259
231
|
value2,
|
260
232
|
value3
|
@@ -269,13 +241,11 @@ describe('ImmutableSequence', () => {
|
|
269
241
|
});
|
270
242
|
|
271
243
|
it('removes last value', () => {
|
272
|
-
|
244
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
245
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
246
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
273
247
|
|
274
|
-
const
|
275
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
276
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
277
|
-
|
278
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
248
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
279
249
|
value1,
|
280
250
|
value2,
|
281
251
|
value3
|
@@ -290,13 +260,11 @@ describe('ImmutableSequence', () => {
|
|
290
260
|
});
|
291
261
|
|
292
262
|
it('returns itself when given key is greater than sequence length', () => {
|
293
|
-
|
294
|
-
|
295
|
-
const
|
296
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
297
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
263
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
264
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
265
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
298
266
|
|
299
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
267
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
300
268
|
value1,
|
301
269
|
value2,
|
302
270
|
value3
|
@@ -307,13 +275,11 @@ describe('ImmutableSequence', () => {
|
|
307
275
|
});
|
308
276
|
|
309
277
|
it('returns itself when given key is less than 0', () => {
|
310
|
-
|
278
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
279
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
280
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
311
281
|
|
312
|
-
const
|
313
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
314
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
315
|
-
|
316
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
282
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
317
283
|
value1,
|
318
284
|
value2,
|
319
285
|
value3
|
@@ -324,13 +290,11 @@ describe('ImmutableSequence', () => {
|
|
324
290
|
});
|
325
291
|
|
326
292
|
it('returns itself when given key is not integer', () => {
|
327
|
-
|
328
|
-
|
329
|
-
const
|
330
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
331
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
293
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
294
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
295
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
332
296
|
|
333
|
-
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
297
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
334
298
|
value1,
|
335
299
|
value2,
|
336
300
|
value3
|
@@ -343,13 +307,11 @@ describe('ImmutableSequence', () => {
|
|
343
307
|
|
344
308
|
describe('isEmpty', () => {
|
345
309
|
it('returns true if the value size is 0', () => {
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
new MockValueObject<number>(1),
|
350
|
-
new MockValueObject<number>(2)
|
310
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
311
|
+
new MockValueObject(1),
|
312
|
+
new MockValueObject(2)
|
351
313
|
]);
|
352
|
-
const sequence2: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
314
|
+
const sequence2: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([]);
|
353
315
|
|
354
316
|
expect(sequence1.isEmpty()).toBe(false);
|
355
317
|
expect(sequence2.isEmpty()).toBe(true);
|
@@ -358,15 +320,13 @@ describe('ImmutableSequence', () => {
|
|
358
320
|
|
359
321
|
describe('map', () => {
|
360
322
|
it('execute the mapper function and returns mapped Address immutably', () => {
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
new MockValueObject
|
365
|
-
new MockValueObject<number>(2),
|
366
|
-
new MockValueObject<number>(3)
|
323
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
324
|
+
new MockValueObject(1),
|
325
|
+
new MockValueObject(2),
|
326
|
+
new MockValueObject(3)
|
367
327
|
]);
|
368
|
-
const sequence2: ImmutableSequence<MockValueObject<string>> = sequence1.map
|
369
|
-
(value: MockValueObject<number>) => {
|
328
|
+
const sequence2: ImmutableSequence<MockValueObject<string>> = sequence1.map(
|
329
|
+
(value: MockValueObject<number>): MockValueObject<string> => {
|
370
330
|
const num: number = value.get();
|
371
331
|
|
372
332
|
return new MockValueObject<string>(`${num ** 2}`);
|
@@ -390,14 +350,12 @@ describe('ImmutableSequence', () => {
|
|
390
350
|
|
391
351
|
describe('filter', () => {
|
392
352
|
it('returns ImmutableSequence.EMPTY when no match', () => {
|
393
|
-
|
394
|
-
|
395
|
-
const
|
396
|
-
const
|
397
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
398
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(2);
|
353
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
354
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
355
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
356
|
+
const value4: MockValueObject<number> = new MockValueObject(2);
|
399
357
|
|
400
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
358
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
401
359
|
value1,
|
402
360
|
value2,
|
403
361
|
value3,
|
@@ -413,15 +371,13 @@ describe('ImmutableSequence', () => {
|
|
413
371
|
});
|
414
372
|
|
415
373
|
it('can remove match values', () => {
|
416
|
-
|
374
|
+
const value1: MockValueObject<number> = new MockValueObject(1);
|
375
|
+
const value2: MockValueObject<number> = new MockValueObject(2);
|
376
|
+
const value3: MockValueObject<number> = new MockValueObject(3);
|
377
|
+
const value4: MockValueObject<number> = new MockValueObject(2);
|
378
|
+
const value5: MockValueObject<number> = new MockValueObject(5);
|
417
379
|
|
418
|
-
const
|
419
|
-
const value2: MockValueObject<number> = new MockValueObject<number>(2);
|
420
|
-
const value3: MockValueObject<number> = new MockValueObject<number>(3);
|
421
|
-
const value4: MockValueObject<number> = new MockValueObject<number>(2);
|
422
|
-
const value5: MockValueObject<number> = new MockValueObject<number>(5);
|
423
|
-
|
424
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray<MockValueObject<number>>([
|
380
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
425
381
|
value1,
|
426
382
|
value2,
|
427
383
|
value3,
|
@@ -449,9 +405,7 @@ describe('ImmutableSequence', () => {
|
|
449
405
|
|
450
406
|
describe('sort', () => {
|
451
407
|
it('when the size is 0, do nothing', () => {
|
452
|
-
|
453
|
-
|
454
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.empty<MockValueObject<number>>();
|
408
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.empty();
|
455
409
|
const sorted: ImmutableSequence<MockValueObject<number>> = sequence.sort(() => {
|
456
410
|
return 1;
|
457
411
|
});
|
@@ -461,12 +415,10 @@ describe('ImmutableSequence', () => {
|
|
461
415
|
});
|
462
416
|
|
463
417
|
it('when the size is 1, just copy a sequence shallowly', () => {
|
464
|
-
expect.assertions(3);
|
465
|
-
|
466
418
|
const arr: Array<MockValueObject<number>> = [
|
467
|
-
new MockValueObject
|
419
|
+
new MockValueObject(2)
|
468
420
|
];
|
469
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
421
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray(arr);
|
470
422
|
const sorted: ImmutableSequence<MockValueObject<number>> = sequence.sort(() => {
|
471
423
|
return 1;
|
472
424
|
});
|
@@ -477,15 +429,13 @@ describe('ImmutableSequence', () => {
|
|
477
429
|
});
|
478
430
|
|
479
431
|
it('returns like an array', () => {
|
480
|
-
expect.assertions(10);
|
481
|
-
|
482
432
|
const arr: Array<MockValueObject<number>> = [
|
483
|
-
new MockValueObject
|
484
|
-
new MockValueObject
|
485
|
-
new MockValueObject
|
486
|
-
new MockValueObject
|
433
|
+
new MockValueObject(4),
|
434
|
+
new MockValueObject(2),
|
435
|
+
new MockValueObject(3),
|
436
|
+
new MockValueObject(1)
|
487
437
|
];
|
488
|
-
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray
|
438
|
+
const sequence: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray(arr);
|
489
439
|
const sorted: ImmutableSequence<MockValueObject<number>> = sequence.sort((m1: MockValueObject<number>, m2: MockValueObject<number>) => {
|
490
440
|
return m1.get() - m2.get();
|
491
441
|
});
|
@@ -505,19 +455,15 @@ describe('ImmutableSequence', () => {
|
|
505
455
|
|
506
456
|
describe('duplicate', () => {
|
507
457
|
it('returns ImmutableSequence.empty() when this is ImmutableSequence.empty()', () => {
|
508
|
-
expect.
|
509
|
-
|
510
|
-
expect(ImmutableSequence.empty<MockValueObject<number>>().duplicate()).toBe(ImmutableSequence.empty<MockValueObject<number>>());
|
458
|
+
expect(ImmutableSequence.empty().duplicate()).toBe(ImmutableSequence.empty());
|
511
459
|
});
|
512
460
|
|
513
461
|
it('returns shallow-copied instance', () => {
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
new MockValueObject
|
518
|
-
new MockValueObject
|
519
|
-
new MockValueObject<number>(3),
|
520
|
-
new MockValueObject<number>(2)
|
462
|
+
const sequence1: ImmutableSequence<MockValueObject<number>> = ImmutableSequence.ofArray([
|
463
|
+
new MockValueObject(1),
|
464
|
+
new MockValueObject(2),
|
465
|
+
new MockValueObject(3),
|
466
|
+
new MockValueObject(2)
|
521
467
|
]);
|
522
468
|
const sequence2: ImmutableSequence<MockValueObject<number>> = sequence1.duplicate();
|
523
469
|
|