20
20
from sagemaker .deserializers import (
21
21
StringDeserializer ,
22
22
BytesDeserializer ,
23
+ CSVDeserializer ,
23
24
StreamDeserializer ,
24
25
NumpyDeserializer ,
25
26
)
@@ -41,6 +42,31 @@ def test_bytes_deserializer():
41
42
assert result == b"[1, 2, 3]"
42
43
43
44
45
+ @pytest .fixture
46
+ def csv_deserializer ():
47
+ return CSVDeserializer ()
48
+
49
+
50
+ def test_csv_deserializer_single_element (csv_deserializer ):
51
+ result = csv_deserializer .deserialize (io .BytesIO (b"1" ), "text/csv" )
52
+ assert result == [["1" ]]
53
+
54
+
55
+ def test_csv_deserializer_array (csv_deserializer ):
56
+ result = csv_deserializer .deserialize (io .BytesIO (b"1,2,3" ), "text/csv" )
57
+ assert result == [["1" , "2" , "3" ]]
58
+
59
+
60
+ def test_csv_deserializer_2dimensional (csv_deserializer ):
61
+ result = csv_deserializer .deserialize (io .BytesIO (b"1,2,3\n 3,4,5" ), "text/csv" )
62
+ assert result == [["1" , "2" , "3" ], ["3" , "4" , "5" ]]
63
+
64
+
65
+ def test_csv_deserializer_posix_compliant (csv_deserializer ):
66
+ result = csv_deserializer .deserialize (io .BytesIO (b"1,2,3\n 3,4,5\n " ), "text/csv" )
67
+ assert result == [["1" , "2" , "3" ], ["3" , "4" , "5" ]]
68
+
69
+
44
70
def test_stream_deserializer ():
45
71
deserializer = StreamDeserializer ()
46
72
0 commit comments