diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/constval.py | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/tests/constval.py b/tests/constval.py index 4863d39..eafb8d3 100644 --- a/tests/constval.py +++ b/tests/constval.py @@ -5,18 +5,40 @@ from chrysacase import ChrysalideTestCase from pychrysalide import PyConstvalObject from pychrysalide.arch import ArchInstruction +import pickle class TestConstVal(ChrysalideTestCase): """TestCase for PyConstvalObject.""" - def testGI(self): - """Validate the PyConstvalObject implementation.""" + def testCreation(self): + """Validate PyConstvalObject creation from Python.""" + + cst = PyConstvalObject(123, 'XXX') + + self.assertEqual(cst, 123) + + self.assertEqual(str(cst), 'XXX') - with self.assertRaises(RuntimeError): - cv = PyConstvalObject() + + def testString(self): + """Validate the PyConstvalObject implementation.""" self.assertEqual(ArchInstruction.ILT_JUMP, 1) self.assertEqual(str(ArchInstruction.ILT_JUMP), 'ILT_JUMP') + + + def testStorage(self): + """Ensure PyConstvalObject instances are storable.""" + + cst = ArchInstruction.ILT_JUMP + + data = pickle.dumps(cst) + + cst = pickle.loads(data) + + self.assertEqual(cst, ArchInstruction.ILT_JUMP) + + self.assertEqual(str(cst), 'ILT_JUMP') |