summaryrefslogtreecommitdiff
path: root/lang_ext/python/test.py
diff options
context:
space:
mode:
Diffstat (limited to 'lang_ext/python/test.py')
-rw-r--r--lang_ext/python/test.py31
1 files changed, 28 insertions, 3 deletions
diff --git a/lang_ext/python/test.py b/lang_ext/python/test.py
index df152da..d278cab 100644
--- a/lang_ext/python/test.py
+++ b/lang_ext/python/test.py
@@ -5,10 +5,35 @@ import unittest
class TestFieldDef(unittest.TestCase):
def test_construction(self):
fielddef1 = upb.FieldDef()
- self.assertTrue(fielddef1 is not None)
- fielddef2 = upb.FieldDef(number=1, name="field1", label=2, type=3)
- self.assertTrue(fielddef2 is not None)
+ self.assertTrue(fielddef1.number is None)
+ self.assertTrue(fielddef1.name is None)
+ self.assertTrue(fielddef1.type is None)
+ self.assertEqual(fielddef1.label, upb.LABEL_OPTIONAL)
+
+ fielddef2 = upb.FieldDef(number=5, name="field2",
+ label=upb.LABEL_REQUIRED, type=upb.TYPE_INT32,
+ type_name="MyType")
+
self.assertTrue(id(fielddef1) != id(fielddef2))
+ self.assertEqual(fielddef2.number, 5)
+ self.assertEqual(fielddef2.name, "field2")
+ self.assertEqual(fielddef2.label, upb.LABEL_REQUIRED)
+ self.assertEqual(fielddef2.type, upb.TYPE_INT32)
+ self.assertEqual(fielddef2.type_name, "MyType")
+
+ fielddef2.number = 8
+ self.assertEqual(fielddef2.number, 8)
+
+ fielddef2.name = "xxx"
+ self.assertEqual(fielddef2.name, "xxx")
+
+ fielddef2.label = upb.LABEL_REPEATED
+ self.assertEqual(fielddef2.label, upb.LABEL_REPEATED)
+
+ fielddef2.type = upb.TYPE_FLOAT
+ self.assertEqual(fielddef2.type, upb.TYPE_FLOAT)
+
+ # TODO: test that assigning invalid values is properly prevented.
if __name__ == '__main__':
unittest.main()
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback