ping, please review.

Maxim.

On 09/12/16 23:48, Bill Fischofer wrote:
Resolve Bug https://bugs.linaro.org/show_bug.cgi?id=2405 by removing
todos in packet validation test. Add additional tests for todos that can
be resolved within current ODP API set and remove the rest to be deferred
for latest updates.

Signed-off-by: Bill Fischofer <bill.fischo...@linaro.org>
---
  test/common_plat/validation/api/packet/packet.c | 56 ++++++++++++-------------
  1 file changed, 28 insertions(+), 28 deletions(-)

diff --git a/test/common_plat/validation/api/packet/packet.c 
b/test/common_plat/validation/api/packet/packet.c
index a4426e2..c75cde9 100644
--- a/test/common_plat/validation/api/packet/packet.c
+++ b/test/common_plat/validation/api/packet/packet.c
@@ -32,6 +32,28 @@ static struct udata_struct {
        "abcdefg",
  };
+static void _packet_compare_data(odp_packet_t pkt1, odp_packet_t pkt2)
+{
+       uint32_t len = odp_packet_len(pkt1);
+       uint32_t offset = 0;
+       uint32_t seglen1, seglen2, cmplen;
+
+       CU_ASSERT_FATAL(len == odp_packet_len(pkt2));
+
+       while (len > 0) {
+               void *pkt1map = odp_packet_offset(pkt1, offset, &seglen1, NULL);
+               void *pkt2map = odp_packet_offset(pkt2, offset, &seglen2, NULL);
+
+               CU_ASSERT_PTR_NOT_NULL_FATAL(pkt1map);
+               CU_ASSERT_PTR_NOT_NULL_FATAL(pkt2map);
+               cmplen = seglen1 < seglen2 ? seglen1 : seglen2;
+               CU_ASSERT(!memcmp(pkt1map, pkt2map, cmplen));
+
+               offset += cmplen;
+               len    -= cmplen;
+       }
+}
+
  int packet_suite_init(void)
  {
        odp_pool_param_t params;
@@ -298,7 +320,8 @@ void packet_test_event_conversion(void)
tmp_pkt = odp_packet_from_event(ev);
        CU_ASSERT_FATAL(tmp_pkt != ODP_PACKET_INVALID);
-       /** @todo: Need an API to compare packets */
+       CU_ASSERT(tmp_pkt == pkt);
+       _packet_compare_data(tmp_pkt, pkt);
  }
void packet_test_basic_metadata(void)
@@ -502,7 +525,7 @@ void packet_test_headroom(void)
seg_data_len = odp_packet_seg_len(pkt);
        CU_ASSERT(seg_data_len >= 1);
-       /** @todo: should be len - 1 */
+
        pull_val = seg_data_len / 2;
        push_val = room;
@@ -625,7 +648,7 @@ void packet_test_tailroom(void) seg_data_len = odp_packet_seg_data_len(pkt, segment);
        CU_ASSERT(seg_data_len >= 1);
-       /** @todo: should be len - 1 */
+
        pull_val = seg_data_len / 2;
        /* Leave one byte in a tailroom for odp_packet_tail() to succeed */
        push_val = (room > 0) ? room - 1 : room;
@@ -681,10 +704,10 @@ void packet_test_segments(void)
                CU_ASSERT_PTR_NOT_NULL(seg_data);
                CU_ASSERT(odp_packet_seg_to_u64(seg) !=
                          odp_packet_seg_to_u64(ODP_PACKET_SEG_INVALID));
+               CU_ASSERT(odp_memcmp(seg_data, seg_data, seg_data_len) == 0);
data_len += seg_data_len; - /** @todo: touch memory in a segment */
                seg_index++;
                seg = odp_packet_next_seg(pkt, seg);
        }
@@ -713,10 +736,10 @@ void packet_test_segments(void)
                CU_ASSERT(seg_data != NULL);
                CU_ASSERT(odp_packet_seg_to_u64(seg) !=
                          odp_packet_seg_to_u64(ODP_PACKET_SEG_INVALID));
+               CU_ASSERT(odp_memcmp(seg_data, seg_data, seg_data_len) == 0);
data_len += seg_data_len; - /** @todo: touch memory in a segment */
                seg_index++;
                seg = odp_packet_next_seg(seg_pkt, seg);
        }
@@ -784,7 +807,6 @@ void packet_test_error_flags(void)
        /**
         * The packet have not been classified so it doesn't have error flags
         * properly set. Just check that functions return one of allowed values.
-        * @todo: try with known good and bad packets.
         */
        err = odp_packet_has_error(pkt);
        CU_ASSERT(err == 0 || err == 1);
@@ -922,28 +944,6 @@ static void _packet_compare_inflags(odp_packet_t pkt1, 
odp_packet_t pkt2)
        COMPARE_INFLAG(pkt1, pkt2, shaper_len_adjust);
  }
-static void _packet_compare_data(odp_packet_t pkt1, odp_packet_t pkt2)
-{
-       uint32_t len = odp_packet_len(pkt1);
-       uint32_t offset = 0;
-       uint32_t seglen1, seglen2, cmplen;
-
-       CU_ASSERT_FATAL(len == odp_packet_len(pkt2));
-
-       while (len > 0) {
-               void *pkt1map = odp_packet_offset(pkt1, offset, &seglen1, NULL);
-               void *pkt2map = odp_packet_offset(pkt2, offset, &seglen2, NULL);
-
-               CU_ASSERT_PTR_NOT_NULL_FATAL(pkt1map);
-               CU_ASSERT_PTR_NOT_NULL_FATAL(pkt2map);
-               cmplen = seglen1 < seglen2 ? seglen1 : seglen2;
-               CU_ASSERT(!memcmp(pkt1map, pkt2map, cmplen));
-
-               offset += cmplen;
-               len    -= cmplen;
-       }
-}
-
  static void _packet_compare_udata(odp_packet_t pkt1, odp_packet_t pkt2)
  {
        uint32_t usize1 = odp_packet_user_area_size(pkt1);

Reply via email to