X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPackets%2FPacket.test.cc;h=1684a88798c26fcf8739df21be5a98d4a8666872;hb=8db732cfb7203fbad3ffc6bddc43346af7411b46;hp=8fe977146782417937dd220dcaebcf4e33c56b3c;hpb=73a2b9252afa039e5e8d0cace3f658478b696483;p=senf.git diff --git a/senf/Packets/Packet.test.cc b/senf/Packets/Packet.test.cc index 8fe9771..1684a88 100644 --- a/senf/Packets/Packet.test.cc +++ b/senf/Packets/Packet.test.cc @@ -178,8 +178,18 @@ SENF_AUTO_UNIT_TEST(packet) BOOST_CHECK( packet.first() == packet ); BOOST_CHECK( packet.last() == packet.next() ); + BOOST_CHECK( ! packet.is_shared() ); + { + senf::Packet p2 (packet); + BOOST_CHECK( packet.is_shared() ); + BOOST_CHECK( p2.is_shared() ); + } + BOOST_CHECK( ! packet.is_shared() ); + senf::Packet p2 (packet.next()); BOOST_CHECK( p2 ); + BOOST_CHECK( packet.is_shared() ); + BOOST_CHECK( p2.is_shared() ); packet.parseNextAs(); BOOST_CHECK_EQUAL( packet.size(), 12u ); BOOST_CHECK_EQUAL( packet.next().size(), 8u ); @@ -188,6 +198,7 @@ SENF_AUTO_UNIT_TEST(packet) BOOST_CHECK( packet.next().as() ); p2 = packet.next().clone(); + BOOST_CHECK( ! packet.is_shared() ); BOOST_REQUIRE( p2 ); packet.next().append( p2 ); BOOST_REQUIRE( packet.next().next() ); @@ -338,6 +349,11 @@ SENF_AUTO_UNIT_TEST(packetAnnotation) BOOST_CHECK_EQUAL( p2.annotation().s, "dead beef" ); BOOST_CHECK_EQUAL( p2.annotation().i, 0x12345678 ); + p2.clearAnnotations(); + BOOST_CHECK_EQUAL( p2.annotation().s, "empty" ); + BOOST_CHECK_EQUAL( p2.annotation().i, -1 ); + BOOST_CHECK_EQUAL( p2.annotation().value, 0 ); + BOOST_CHECK( Reg::lookup() >= 0 ); BOOST_CHECK( Reg::lookup() < 0 ); BOOST_CHECK( Reg::lookup() < 0 );