Skip to content

Commit 413e4bf

Browse files
committed
Wrote more tests for data series arithmetics
1 parent e028d4e commit 413e4bf

File tree

1 file changed

+278
-44
lines changed

1 file changed

+278
-44
lines changed

src/DataFrame-Tests/DataSeriesTest.class.st

Lines changed: 278 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ DataSeriesTest >> setUp [
1919
]
2020

2121
{ #category : #tests }
22-
DataSeriesTest >> testAddArrayToSeries [
22+
DataSeriesTest >> testArithmeticsAddArrayToSeries [
2323
| series array actual expected |
2424

2525
series := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
@@ -32,7 +32,7 @@ DataSeriesTest >> testAddArrayToSeries [
3232
]
3333

3434
{ #category : #tests }
35-
DataSeriesTest >> testAddScalarToSeries [
35+
DataSeriesTest >> testArithmeticsAddScalarToSeries [
3636
| series scalar actual expected |
3737

3838
series := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
@@ -45,7 +45,7 @@ DataSeriesTest >> testAddScalarToSeries [
4545
]
4646

4747
{ #category : #tests }
48-
DataSeriesTest >> testAddSeriesToArray [
48+
DataSeriesTest >> testArithmeticsAddSeriesToArray [
4949
| array series actual expected |
5050

5151
array := #(1 2 3).
@@ -58,7 +58,7 @@ DataSeriesTest >> testAddSeriesToArray [
5858
]
5959

6060
{ #category : #tests }
61-
DataSeriesTest >> testAddSeriesToScalar [
61+
DataSeriesTest >> testArithmeticsAddSeriesToScalar [
6262
| scalar series actual expected |
6363

6464
scalar := 10.
@@ -71,7 +71,7 @@ DataSeriesTest >> testAddSeriesToScalar [
7171
]
7272

7373
{ #category : #tests }
74-
DataSeriesTest >> testAddSeriesToSeriesDifferentKeys [
74+
DataSeriesTest >> testArithmeticsAddSeriesToSeriesDifferentKeys [
7575
| firstSeries secondSeries |
7676

7777
firstSeries := DataSeries withKeys: #(x y z) values: #(1 2 3) name: #X.
@@ -81,7 +81,7 @@ DataSeriesTest >> testAddSeriesToSeriesDifferentKeys [
8181
]
8282

8383
{ #category : #tests }
84-
DataSeriesTest >> testAddSeriesToSeriesSameKeysAndName [
84+
DataSeriesTest >> testArithmeticsAddSeriesToSeriesSameKeysAndName [
8585
| firstSeries secondSeries actual expected |
8686

8787
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
@@ -94,7 +94,7 @@ DataSeriesTest >> testAddSeriesToSeriesSameKeysAndName [
9494
]
9595

9696
{ #category : #tests }
97-
DataSeriesTest >> testAddSeriesToSeriesSameKeysDifferentName [
97+
DataSeriesTest >> testArithmeticsAddSeriesToSeriesSameKeysDifferentName [
9898
| firstSeries secondSeries actual expected |
9999

100100
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
@@ -106,6 +106,277 @@ DataSeriesTest >> testAddSeriesToSeriesSameKeysDifferentName [
106106
self assert: actual equals: expected.
107107
]
108108

109+
{ #category : #tests }
110+
DataSeriesTest >> testArithmeticsDivideArrayBySeries [
111+
112+
| array a b |
113+
114+
array := #(2 4 3).
115+
a := #(1 2 3) asDataSeries.
116+
b := { 2 . 2 . 1 } asDataSeries.
117+
118+
self assert: array / a equals: b.
119+
]
120+
121+
{ #category : #tests }
122+
DataSeriesTest >> testArithmeticsDivideSeriesByArray [
123+
124+
| array a b |
125+
126+
array := #(2 4 3).
127+
a := #(1 2 3) asDataSeries.
128+
b := { 1/2 . 1/2 . 1 } asDataSeries.
129+
130+
self assert: a / array equals: b.
131+
]
132+
133+
{ #category : #tests }
134+
DataSeriesTest >> testArithmeticsDivideSeriesByScalar [
135+
136+
| a b |
137+
138+
a := #(1 2 3) asDataSeries.
139+
b := #(0.5 1 1.5) asDataSeries.
140+
141+
self assert: a / 2 equals: b.
142+
]
143+
144+
{ #category : #tests }
145+
DataSeriesTest >> testArithmeticsDivideSeriesBySeries [
146+
147+
| a b c |
148+
149+
a := #(2 4 3) asDataSeries.
150+
b := #(1 2 3) asDataSeries.
151+
c := { 2 . 2 . 1 } asDataSeries.
152+
153+
self assert: a / b equals: c.
154+
]
155+
156+
{ #category : #tests }
157+
DataSeriesTest >> testArithmeticsDivideSeriesBySeriesDifferentKeys [
158+
| firstSeries secondSeries |
159+
160+
firstSeries := DataSeries withKeys: #(x y z) values: #(1 2 3) name: #X.
161+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
162+
163+
self should: [ firstSeries / secondSeries ] raise: Error.
164+
]
165+
166+
{ #category : #tests }
167+
DataSeriesTest >> testArithmeticsDivideSeriesBySeriesSameKeysAndName [
168+
| firstSeries secondSeries actual expected |
169+
170+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
171+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
172+
173+
expected := DataSeries withKeys: #(a b c) values: { 1/3 . 1/2 . 3/5 } name: #X.
174+
actual := firstSeries / secondSeries.
175+
176+
self assert: actual equals: expected.
177+
]
178+
179+
{ #category : #tests }
180+
DataSeriesTest >> testArithmeticsDivideSeriesBySeriesSameKeysDifferentName [
181+
| firstSeries secondSeries actual expected |
182+
183+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
184+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #Y.
185+
186+
expected := DataSeries withKeys: #(a b c) values: { 1/3 . 1/2 . 3/5 } name: '(no name)'.
187+
actual := firstSeries / secondSeries.
188+
189+
self assert: actual equals: expected.
190+
]
191+
192+
{ #category : #tests }
193+
DataSeriesTest >> testArithmeticsMultiplyArrayBySeries [
194+
195+
| array a b |
196+
197+
array := #(2 4 3).
198+
a := #(1 2 3) asDataSeries.
199+
b := #(2 8 9) asDataSeries.
200+
201+
self assert: array * a equals: b.
202+
]
203+
204+
{ #category : #tests }
205+
DataSeriesTest >> testArithmeticsMultiplyScalarBySeries [
206+
207+
| a b |
208+
209+
a := #(1 2 3) asDataSeries.
210+
b := #(2 4 6) asDataSeries.
211+
212+
self assert: 2 * a equals: b.
213+
]
214+
215+
{ #category : #tests }
216+
DataSeriesTest >> testArithmeticsMultiplySeriesByArray [
217+
218+
| array a b |
219+
220+
array := #(2 4 3).
221+
a := #(1 2 3) asDataSeries.
222+
b := #(2 8 9) asDataSeries.
223+
224+
self assert: a * array equals: b.
225+
]
226+
227+
{ #category : #tests }
228+
DataSeriesTest >> testArithmeticsMultiplySeriesByScalar [
229+
230+
| a b |
231+
232+
a := #(1 2 3) asDataSeries.
233+
b := #(2 4 6) asDataSeries.
234+
235+
self assert: a * 2 equals: b.
236+
]
237+
238+
{ #category : #tests }
239+
DataSeriesTest >> testArithmeticsMultiplySeriesBySeries [
240+
241+
| a b c |
242+
243+
a := #(2 4 3) asDataSeries.
244+
b := #(1 2 3) asDataSeries.
245+
c := #(2 8 9) asDataSeries.
246+
247+
self assert: a * b equals: c.
248+
]
249+
250+
{ #category : #tests }
251+
DataSeriesTest >> testArithmeticsMultiplySeriesBySeriesDifferentKeys [
252+
| firstSeries secondSeries |
253+
254+
firstSeries := DataSeries withKeys: #(x y z) values: #(1 2 3) name: #X.
255+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
256+
257+
self should: [ firstSeries * secondSeries ] raise: Error.
258+
]
259+
260+
{ #category : #tests }
261+
DataSeriesTest >> testArithmeticsMultiplySeriesBySeriesSameKeysAndName [
262+
| firstSeries secondSeries actual expected |
263+
264+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
265+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
266+
267+
expected := DataSeries withKeys: #(a b c) values: #(3 8 15) name: #X.
268+
actual := firstSeries * secondSeries.
269+
270+
self assert: actual equals: expected.
271+
]
272+
273+
{ #category : #tests }
274+
DataSeriesTest >> testArithmeticsMultiplySeriesBySeriesSameKeysDifferentName [
275+
| firstSeries secondSeries actual expected |
276+
277+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
278+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #Y.
279+
280+
expected := DataSeries withKeys: #(a b c) values: #(3 8 15) name: '(no name)'.
281+
actual := firstSeries * secondSeries.
282+
283+
self assert: actual equals: expected.
284+
]
285+
286+
{ #category : #tests }
287+
DataSeriesTest >> testArithmeticsSubtractArrayFromSeries [
288+
289+
| array a b |
290+
291+
array := #(2 4 3).
292+
a := #(1 2 3) asDataSeries.
293+
b := #(-1 -2 0) asDataSeries.
294+
295+
self assert: a - array equals: b.
296+
]
297+
298+
{ #category : #tests }
299+
DataSeriesTest >> testArithmeticsSubtractScalarFromSeries [
300+
301+
| a b |
302+
303+
a := #(1 2 3) asDataSeries.
304+
b := #(-1 0 1) asDataSeries.
305+
306+
self assert: a - 2 equals: b.
307+
]
308+
309+
{ #category : #tests }
310+
DataSeriesTest >> testArithmeticsSubtractSeriesFromArray [
311+
312+
| array a b |
313+
314+
array := #(2 4 3).
315+
a := #(1 2 3) asDataSeries.
316+
b := #(1 2 0) asDataSeries.
317+
318+
self assert: array - a equals: b.
319+
]
320+
321+
{ #category : #tests }
322+
DataSeriesTest >> testArithmeticsSubtractSeriesFromScalar [
323+
324+
| a b |
325+
326+
a := #(1 2 3) asDataSeries.
327+
b := #(1 0 -1) asDataSeries.
328+
329+
self assert: 2 - a equals: b.
330+
]
331+
332+
{ #category : #tests }
333+
DataSeriesTest >> testArithmeticsSubtractSeriesFromSeries [
334+
335+
| a b c |
336+
337+
a := #(2 4 3) asDataSeries.
338+
b := #(1 2 3) asDataSeries.
339+
c := #(1 2 0) asDataSeries.
340+
341+
self assert: a - b equals: c.
342+
]
343+
344+
{ #category : #tests }
345+
DataSeriesTest >> testArithmeticsSubtractSeriesFromSeriesDifferentKeys [
346+
| firstSeries secondSeries |
347+
348+
firstSeries := DataSeries withKeys: #(x y z) values: #(1 2 3) name: #X.
349+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
350+
351+
self should: [ firstSeries - secondSeries ] raise: Error.
352+
]
353+
354+
{ #category : #tests }
355+
DataSeriesTest >> testArithmeticsSubtractSeriesFromSeriesSameKeysAndName [
356+
| firstSeries secondSeries actual expected |
357+
358+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
359+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #X.
360+
361+
expected := DataSeries withKeys: #(a b c) values: #(-2 -2 -2) name: #X.
362+
actual := firstSeries - secondSeries.
363+
364+
self assert: actual equals: expected.
365+
]
366+
367+
{ #category : #tests }
368+
DataSeriesTest >> testArithmeticsSubtractSeriesFromSeriesSameKeysDifferentName [
369+
| firstSeries secondSeries actual expected |
370+
371+
firstSeries := DataSeries withKeys: #(a b c) values: #(1 2 3) name: #X.
372+
secondSeries := DataSeries withKeys: #(a b c) values: #(3 4 5) name: #Y.
373+
374+
expected := DataSeries withKeys: #(a b c) values: #(-2 -2 -2) name: '(no name)'.
375+
actual := firstSeries - secondSeries.
376+
377+
self assert: actual equals: expected.
378+
]
379+
109380
{ #category : #tests }
110381
DataSeriesTest >> testAsDictionary [
111382
| expected actual |
@@ -494,17 +765,6 @@ DataSeriesTest >> testDetectNotFound [
494765
raise: NotFound.
495766
]
496767

497-
{ #category : #tests }
498-
DataSeriesTest >> testDivideByScalar [
499-
500-
| a b |
501-
502-
a := #(1 2 3) asDataSeries.
503-
b := #(0.5 1 1.5) asDataSeries.
504-
505-
self assert: a / 2 equals: b.
506-
]
507-
508768
{ #category : #tests }
509769
DataSeriesTest >> testDo [
510770

@@ -761,18 +1021,6 @@ DataSeriesTest >> testMode [
7611021
self assert: series mode equals: 8.
7621022
]
7631023

764-
{ #category : #tests }
765-
DataSeriesTest >> testMultiplyScalar [
766-
767-
| a b |
768-
769-
a := #(1 2 3) asDataSeries.
770-
b := #(2 4 6) asDataSeries.
771-
772-
self assert: 2 * a equals: b.
773-
self assert: a * 2 equals: b.
774-
]
775-
7761024
{ #category : #tests }
7771025
DataSeriesTest >> testNinth [
7781026

@@ -1040,20 +1288,6 @@ DataSeriesTest >> testStdev [
10401288
self assert: series stdev closeTo: 5.00727.
10411289
]
10421290

1043-
{ #category : #tests }
1044-
DataSeriesTest >> testSubtractElementwise [
1045-
1046-
| a b c d |
1047-
1048-
a := #(1 2 3) asDataSeries.
1049-
b := #(3 6 8) asDataSeries.
1050-
c := #(-2 -4 -5) asDataSeries.
1051-
d := #(2 4 5) asDataSeries.
1052-
1053-
self assert: a - b equals: c.
1054-
self assert: b - a equals: d.
1055-
]
1056-
10571291
{ #category : #tests }
10581292
DataSeriesTest >> testSummary [
10591293
| expected actual |

0 commit comments

Comments
 (0)