pyloxi: move remaining basic serialization tests to datafiles
diff --git a/py_gen/tests/of12.py b/py_gen/tests/of12.py
index b557730..6926382 100644
--- a/py_gen/tests/of12.py
+++ b/py_gen/tests/of12.py
@@ -26,6 +26,7 @@
# EPL for the specific language governing permissions and limitations
# under the EPL.
import unittest
+from testutil import add_datafiles_tests
try:
import loxi.of12 as ofp
@@ -56,91 +57,11 @@
self.assertTrue(hasattr(loxi.of12, "message"))
self.assertTrue(hasattr(loxi.of12, "oxm"))
-class TestCommon(unittest.TestCase):
- sample_empty_match_buf = ''.join([
- '\x00\x01', # type
- '\x00\x04', # length
- '\x00\x00\x00\x00', # padding
- ])
-
- def test_empty_match_pack(self):
- obj = ofp.match()
- self.assertEquals(self.sample_empty_match_buf, obj.pack())
-
- def test_empty_match_unpack(self):
- obj = ofp.match.unpack(self.sample_empty_match_buf)
- self.assertEquals(len(obj.oxm_list), 0)
-
- sample_match_buf = ''.join([
- '\x00\x01', # type
- '\x00\x3C', # length
- '\x80\x00', # oxm_list[0].class
- '\x20\x02', # oxm_list[0].type_len
- '\x00\x35', # oxm_list[0].value
- '\x80\x00', # oxm_list[1].class
- '\x05\x10', # oxm_list[1].type_len
- '\xFE\xDC\xBA\x98\x76\x54\x32\x10', # oxm_list[1].value
- '\xFF\xFF\xFF\xFF\x12\x34\x56\x78', # oxm_list[1].mask
- '\x80\x00', # oxm_list[2].class
- '\x08\x06', # oxm_list[2].type_len
- '\x01\x02\x03\x04\x05\x06', # oxm_list[2].value
- '\x80\x00', # oxm_list[3].class
- '\x36\x10', # oxm_list[3].type_len
- '\x12' * 16, # oxm_list[3].value
- '\x00' * 4, # padding
- ])
-
- def test_match_pack(self):
- obj = ofp.match([
- ofp.oxm.udp_dst(53),
- ofp.oxm.metadata_masked(0xFEDCBA9876543210, 0xFFFFFFFF12345678),
- ofp.oxm.eth_src([1,2,3,4,5,6]),
- ofp.oxm.ipv6_dst("\x12" * 16),
- ])
- self.assertEquals(self.sample_match_buf, obj.pack())
-
- def test_match_unpack(self):
- obj = ofp.match.unpack(self.sample_match_buf)
- self.assertEquals(len(obj.oxm_list), 4)
- self.assertEquals(obj.oxm_list[0], ofp.oxm.udp_dst(53))
- self.assertEquals(obj.oxm_list[1], ofp.oxm.metadata_masked(0xFEDCBA9876543210, 0xFFFFFFFF12345678))
- self.assertEquals(obj.oxm_list[2], ofp.oxm.eth_src([1,2,3,4,5,6]))
- self.assertEquals(obj.oxm_list[3], ofp.oxm.ipv6_dst("\x12" * 16))
-
-class TestOXM(unittest.TestCase):
- def test_oxm_in_phy_port_pack(self):
- import loxi.of12 as ofp
- obj = ofp.oxm.in_phy_port(value=42)
- expected = ''.join([
- '\x80\x00', # class
- '\x02', # type/masked
- '\x04', # length
- '\x00\x00\x00\x2a' # value
- ])
- self.assertEquals(expected, obj.pack())
-
- def test_oxm_in_phy_port_masked_pack(self):
- import loxi.of12 as ofp
- obj = ofp.oxm.in_phy_port_masked(value=42, value_mask=0xaabbccdd)
- expected = ''.join([
- '\x80\x00', # class
- '\x03', # type/masked
- '\x08', # length
- '\x00\x00\x00\x2a', # value
- '\xaa\xbb\xcc\xdd' # mask
- ])
- self.assertEquals(expected, obj.pack())
-
- def test_oxm_ipv6_dst_pack(self):
- import loxi.of12 as ofp
- obj = ofp.oxm.ipv6_dst(value='\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0d\x0f')
- expected = ''.join([
- '\x80\x00', # class
- '\x36', # type/masked
- '\x10', # length
- '\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0d\x0f', # value
- ])
- self.assertEquals(expected, obj.pack())
+# 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):
"""