-
Notifications
You must be signed in to change notification settings - Fork 28
Expand file tree
/
Copy pathDataFrameJsonWriterTest.class.st
More file actions
75 lines (68 loc) · 2 KB
/
DataFrameJsonWriterTest.class.st
File metadata and controls
75 lines (68 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Class {
#name : #DataFrameJsonWriterTest,
#superclass : #TestCase,
#instVars : [
'directory',
'df'
],
#category : #'DataFrame-IO-Tests-Core'
}
{ #category : #running }
DataFrameJsonWriterTest >> readFile: aFileReference [
| stream contents |
stream := aFileReference readStream.
contents := stream upToEnd.
stream close.
^ contents
]
{ #category : #running }
DataFrameJsonWriterTest >> setUp [
super setUp.
directory := FileSystem memory workingDirectory / 'testDataForJson'.
directory createDirectory.
df := DataFrame withRows: #(
(1 2 nil nil)
(nil 2 3 nil)
(nil nil nil 5)
(1 nil 2 nil))
rowNames: #('row1' 'row2' 'row3' 'row4')
columnNames: #('col1' 'col2' 'col3' 'col4')
]
{ #category : #tests }
DataFrameJsonWriterTest >> testWriteAsString [
| actual expected |.
actual := DataFrameJsonWriter new writeAsString: df.
expected := '' join: (TestJsonStrings recordsJsonString
regex: '[^\s]+' matchesCollect: [:x|x]).
self assert: actual equals: expected
]
{ #category : #tests }
DataFrameJsonWriterTest >> testWriteTo [
| file actual expected |
file := directory / 'output.json'.
DataFrameJsonWriter new write: df to: file.
actual := self readFile: file.
expected := '' join: (TestJsonStrings recordsJsonString
regex: '[^\s]+' matchesCollect: [:x|x]).
self assert: actual lines equals: expected lines
]
{ #category : #tests }
DataFrameJsonWriterTest >> testWriteToJson [
| file actual expected |
file := directory / 'output.json'.
df writeToJson: file.
actual := self readFile: file.
expected := '' join: (TestJsonStrings recordsJsonString
regex: '[^\s]+' matchesCollect: [:x|x]).
self assert: actual lines equals: expected lines
]
{ #category : #tests }
DataFrameJsonWriterTest >> testWriteToJsonOrient [
| file actual expected |
file := directory / 'output.json'.
df writeToJson: file orient: 'values'.
actual := self readFile: file.
expected := '' join: (TestJsonStrings valuesJsonString
regex: '[^\s]+' matchesCollect: [:x|x]).
self assert: actual lines equals: expected lines
]