Implement integer parsing
[ton] / test_don.py
index 3e830c0..46034ec 100644 (file)
@@ -173,23 +173,39 @@ class TestStringSerialize(unittest.TestCase):
             '{ "foo"utf8: 1i32, "bar"utf8: "baz"utf8 }'
         )
 
-#   class TestStringDeserialize(unittest.TestCase):
-#       def test_deserializes_null(self):
-#           self.assertEqual(
-#               None,
-#               string.deserialize('null'),
-#           )
-#       
-#       def test_deserializes_null(self):
-#           self.assertEqual(
-#               True,
-#               string.deserialize('true'),
-#           )
-#       
-#       def test_deserializes_null(self):
-#           self.assertEqual(
-#               False,
-#               string.deserialize('false'),
-#           )
+class TestStringDeserialize(unittest.TestCase):
+    def test_deserializes_null(self):
+        self.assertEqual(
+            None,
+            string.deserialize('null'),
+        )
+
+    def test_deserializes_null(self):
+        self.assertEqual(
+            True,
+            string.deserialize('true'),
+        )
+
+    def test_deserializes_null(self):
+        self.assertEqual(
+            False,
+            string.deserialize('false'),
+        )
+
+    def test_deserializes_int8(self):
+        self.assertEqual(10, string.deserialize('10i8'))
+        self.assertEqual(-1, string.deserialize('-1i8'))
+
+    def test_deserializes_int16(self):
+        self.assertEqual(10, string.deserialize('10i16'))
+        self.assertEqual(-1, string.deserialize('-1i16'))
+
+    def test_deserializes_int32(self):
+        self.assertEqual(10, string.deserialize('10i32'))
+        self.assertEqual(-1, string.deserialize('-1i32'))
+
+    def test_deserializes_int64(self):
+        self.assertEqual(10, string.deserialize('10i64'))
+        self.assertEqual(-1, string.deserialize('-1i64'))
 
 unittest.main()