99
1010from apycalc import load_data , save_data , get_entry_1yago , compute_stats
1111
12+ from util import pfmt
13+
1214
1315def test_load_data () -> None :
1416 csv = textwrap .dedent ('''\
@@ -20,19 +22,19 @@ def test_load_data() -> None:
2022
2123 data = list (load_data (io .StringIO (csv )))
2224
23- assert data == [
24- {'date' : date (2000 , 1 , 1 ), 'rate' : 10 },
25- {'date' : date (2000 , 1 , 8 ), 'rate' : 12 },
26- {'date' : date (2000 , 1 , 15 ), 'rate' : 13 },
27- ]
25+ assert pfmt ( data ) == pfmt ( [
26+ {'date' : date (2000 , 1 , 1 ), 'rate' : 10.0 },
27+ {'date' : date (2000 , 1 , 8 ), 'rate' : 12.0 },
28+ {'date' : date (2000 , 1 , 15 ), 'rate' : 13.0 },
29+ ])
2830
2931 data = list (load_data (io .StringIO (csv ), krate = 'Close' ))
3032
31- assert data == [
32- {'date' : date (2000 , 1 , 1 ), 'rate' : 12 },
33- {'date' : date (2000 , 1 , 8 ), 'rate' : 13 },
33+ assert pfmt ( data ) == pfmt ( [
34+ {'date' : date (2000 , 1 , 1 ), 'rate' : 12.0 },
35+ {'date' : date (2000 , 1 , 8 ), 'rate' : 13.0 },
3436 {'date' : date (2000 , 1 , 15 ), 'rate' : 18.5 },
35- ]
37+ ])
3638
3739 csv = textwrap .dedent ('''\
3840 Date,Open
@@ -43,19 +45,19 @@ def test_load_data() -> None:
4345
4446 data = list (load_data (io .StringIO (csv )))
4547
46- assert data == [
47- {'date' : date (2000 , 1 , 1 ), 'rate' : 10 },
48- {'date' : date (2000 , 1 , 8 ), 'rate' : 0 },
49- {'date' : date (2000 , 1 , 15 ), 'rate' : 13 },
50- ]
48+ assert pfmt ( data ) == pfmt ( [
49+ {'date' : date (2000 , 1 , 1 ), 'rate' : 10.0 },
50+ {'date' : date (2000 , 1 , 8 ), 'rate' : 0.0 },
51+ {'date' : date (2000 , 1 , 15 ), 'rate' : 13.0 },
52+ ])
5153
5254 data = list (load_data (io .StringIO (csv ), fill_zeros = True ))
5355
54- assert data == [
55- {'date' : date (2000 , 1 , 1 ), 'rate' : 10 },
56- {'date' : date (2000 , 1 , 8 ), 'rate' : 10 },
57- {'date' : date (2000 , 1 , 15 ), 'rate' : 13 },
58- ]
56+ assert pfmt ( data ) == pfmt ( [
57+ {'date' : date (2000 , 1 , 1 ), 'rate' : 10.0 },
58+ {'date' : date (2000 , 1 , 8 ), 'rate' : 10.0 },
59+ {'date' : date (2000 , 1 , 15 ), 'rate' : 13.0 },
60+ ])
5961
6062
6163def test_save_data () -> None :
@@ -142,8 +144,8 @@ def test_compute_stats() -> None:
142144
143145 data_in_copy = [x .copy () for x in data_in ]
144146 data_out = list (compute_stats (data_in ))
145- assert data_in == data_in_copy
146- assert data_out == [
147+ assert pfmt ( data_in ) == pfmt ( data_in_copy )
148+ assert pfmt ( data_out ) == pfmt ( [
147149 {'date' : date (2002 , 1 , 1 ), 'rate' : 201 ,
148150 'apy' : 0.9900990099009901 , 'apyma' : 0.9900990099009901 },
149151 {'date' : date (2002 , 4 , 4 ), 'rate' : 204 ,
@@ -152,12 +154,12 @@ def test_compute_stats() -> None:
152154 'apy' : 0.9714285714285715 , 'apyma' : 0.9937765205091939 },
153155 {'date' : date (2002 , 10 , 10 ), 'rate' : 210 ,
154156 'apy' : 0.926605504587156 , 'apyma' : 0.9769837665286843 },
155- ]
157+ ])
156158
157159 data_in_copy = [x .copy () for x in data_in ]
158160 data_out = list (compute_stats (data_in , 2 ))
159- assert data_in == data_in_copy
160- assert data_out == [
161+ assert pfmt ( data_in ) == pfmt ( data_in_copy )
162+ assert pfmt ( data_out ) == pfmt ( [
161163 {'date' : date (2002 , 1 , 1 ), 'rate' : 201 ,
162164 'apy' : 0.9900990099009901 , 'apyma' : 0.9900990099009901 },
163165 {'date' : date (2002 , 4 , 4 ), 'rate' : 204 ,
@@ -166,4 +168,4 @@ def test_compute_stats() -> None:
166168 'apy' : 0.9714285714285715 , 'apyma' : 0.9956152758132957 },
167169 {'date' : date (2002 , 10 , 10 ), 'rate' : 210 ,
168170 'apy' : 0.926605504587156 , 'apyma' : 0.9490170380078637 },
169- ]
171+ ])
0 commit comments