- use bytearray(n) instead of str().zfill(n) - test data are more strictly.
Signed-off-by: HIYAMA Manabu <[email protected]> --- ryu/tests/unit/ofproto/test_ofproto_parser.py | 19 ++++++++++++------ ryu/tests/unit/ofproto/test_parser_v10.py | 26 +++++++++++++++---------- ryu/tests/unit/ofproto/test_parser_v12.py | 26 +++++++++++++++---------- 3 files changed, 45 insertions(+), 26 deletions(-) diff --git a/ryu/tests/unit/ofproto/test_ofproto_parser.py b/ryu/tests/unit/ofproto/test_ofproto_parser.py index 9baf46a..be67434 100644 --- a/ryu/tests/unit/ofproto/test_ofproto_parser.py +++ b/ryu/tests/unit/ofproto/test_ofproto_parser.py @@ -161,16 +161,23 @@ class TestMsgBase(unittest.TestCase): c.set_xid(xid) def _test_parser(self, msg_type=ofproto_v1_0.OFPT_HELLO): + version = ofproto_v1_0.OFP_VERSION + msg_len = ofproto_v1_0.OFP_HEADER_SIZE xid = 2183948390 + data = '\x00\x01\x02\x03' + + fmt = ofproto_v1_0.OFP_HEADER_PACK_STR + buf = struct.pack(fmt, version, msg_type, msg_len, xid) \ + + data + res = ofproto_v1_0_parser.OFPHello.parser( - object, ofproto_v1_0.OFP_VERSION, msg_type, - ofproto_v1_0.OFP_HEADER_SIZE, xid, - str().zfill(ofproto_v1_0.OFP_HEADER_SIZE)) + object, version, msg_type, msg_len, xid, bytearray(buf)) - eq_(ofproto_v1_0.OFP_VERSION, res.version) - eq_(ofproto_v1_0.OFPT_HELLO, res.msg_type) - eq_(ofproto_v1_0.OFP_HEADER_SIZE, res.msg_len) + eq_(version, res.version) + eq_(msg_type, res.msg_type) + eq_(msg_len, res.msg_len) eq_(xid, res.xid) + eq_(buffer(buf), res.buf) # test __str__() list_ = ('version:', 'msg_type', 'xid') diff --git a/ryu/tests/unit/ofproto/test_parser_v10.py b/ryu/tests/unit/ofproto/test_parser_v10.py index 9a47ebc..66a69a4 100644 --- a/ryu/tests/unit/ofproto/test_parser_v10.py +++ b/ryu/tests/unit/ofproto/test_parser_v10.py @@ -2695,18 +2695,24 @@ class TestOFPHello(unittest.TestCase): pass def test_parser(self): + version = ofproto_v1_0.OFP_VERSION + msg_type = ofproto_v1_0.OFPT_HELLO + msg_len = ofproto_v1_0.OFP_HEADER_SIZE xid = 2183948390 - res = OFPHello.parser(object, - ofproto_v1_0.OFP_VERSION, - ofproto_v1_0.OFPT_HELLO, - ofproto_v1_0.OFP_HEADER_SIZE, - xid, - str().zfill(ofproto_v1_0.OFP_HEADER_SIZE)) - - eq_(ofproto_v1_0.OFP_VERSION, res.version) - eq_(ofproto_v1_0.OFPT_HELLO, res.msg_type) - eq_(ofproto_v1_0.OFP_HEADER_SIZE, res.msg_len) + data = '\x00\x01\x02\x03' + + fmt = ofproto_v1_0.OFP_HEADER_PACK_STR + buf = struct.pack(fmt, version, msg_type, msg_len, xid) \ + + data + + res = OFPHello.parser(object, version, msg_type, msg_len, xid, + bytearray(buf)) + + eq_(version, res.version) + eq_(msg_type, res.msg_type) + eq_(msg_len, res.msg_len) eq_(xid, res.xid) + eq_(buffer(buf), res.buf) # test __str__() list_ = ('version:', 'msg_type', 'xid') diff --git a/ryu/tests/unit/ofproto/test_parser_v12.py b/ryu/tests/unit/ofproto/test_parser_v12.py index 5efd527..7f38725 100644 --- a/ryu/tests/unit/ofproto/test_parser_v12.py +++ b/ryu/tests/unit/ofproto/test_parser_v12.py @@ -85,18 +85,24 @@ class TestOFPHello(unittest.TestCase): pass def test_parser(self): + version = ofproto_v1_2.OFP_VERSION + msg_type = ofproto_v1_2.OFPT_HELLO + msg_len = ofproto_v1_2.OFP_HEADER_SIZE xid = 2183948390 - res = OFPHello.parser(object, - ofproto_v1_2.OFP_VERSION, - ofproto_v1_2.OFPT_HELLO, - ofproto_v1_2.OFP_HEADER_SIZE, - xid, - str().zfill(ofproto_v1_2.OFP_HEADER_SIZE)) - - eq_(ofproto_v1_2.OFP_VERSION, res.version) - eq_(ofproto_v1_2.OFPT_HELLO, res.msg_type) - eq_(ofproto_v1_2.OFP_HEADER_SIZE, res.msg_len) + data = '\x00\x01\x02\x03' + + fmt = ofproto_v1_2.OFP_HEADER_PACK_STR + buf = pack(fmt, version, msg_type, msg_len, xid) \ + + data + + res = OFPHello.parser(object, version, msg_type, msg_len, xid, + bytearray(buf)) + + eq_(version, res.version) + eq_(msg_type, res.msg_type) + eq_(msg_len, res.msg_len) eq_(xid, res.xid) + eq_(buffer(buf), res.buf) def test_serialize(self): -- 1.7.9.5 ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ Ryu-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel
