def test_version(self): import loxi self.assertTrue(hasattr(loxi.of12, "ProtocolError")) self.assertTrue(hasattr(loxi.of12, "OFP_VERSION")) self.assertEquals(loxi.of12.OFP_VERSION, 3) self.assertTrue(hasattr(loxi.of12, "action")) self.assertTrue(hasattr(loxi.of12, "common")) self.assertTrue(hasattr(loxi.of12, "const")) self.assertTrue(hasattr(loxi.of12, "message")) self.assertTrue(hasattr(loxi.of12, "oxm")) # The majority of the serialization tests are created here using the files in # the test_data directory. class TestDataFiles(unittest.TestCase): pass add_datafiles_tests(TestDataFiles, 'of12/', ofp) class TestAllOF12(unittest.TestCase): """ Round-trips every class through serialization/deserialization. Not a replacement for handcoded tests because it only uses the default member values. """ def setUp(self): mods = [ofp.action,ofp.message,ofp.common,ofp.oxm] self.klasses = [klass for mod in mods for klass in mod.__dict__.values() if isinstance(klass, type) and issubclass(klass, loxi.OFObject) and hasattr(klass, 'pack')]
self.assertTrue(hasattr(loxi.of13, "OFP_VERSION")) self.assertEqual(loxi.of13.OFP_VERSION, 4) self.assertTrue(hasattr(loxi.of13, "action")) self.assertTrue(hasattr(loxi.of13, "common")) self.assertTrue(hasattr(loxi.of13, "const")) self.assertTrue(hasattr(loxi.of13, "message")) self.assertTrue(hasattr(loxi.of13, "oxm")) # The majority of the serialization tests are created here using the files in # the test_data directory. class TestDataFiles(unittest.TestCase): pass add_datafiles_tests(TestDataFiles, 'of13/', ofp) class TestAllOF13(unittest.TestCase): """ Round-trips every class through serialization/deserialization. Not a replacement for handcoded tests because it only uses the default member values. """ def setUp(self): mods = [ofp.action, ofp.message, ofp.common, ofp.oxm] self.klasses = [ klass for mod in mods for klass in mod.__dict__.values() if isinstance(klass, type) and issubclass(klass, loxi.OFObject) and not hasattr(klass, 'subtypes') ]