X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FDefaultBundle%2FEthernetPacket.test.cc;h=397f6f5f1ad9942231aeb5a6ff82e11108306cf0;hb=a18d131c38ffe7178ea4736ed3f584125e9903ae;hp=e5698945dddaf168be49750f3af1245bc4de1c4c;hpb=b4743e784a0075abddf59fc3c2e7d6b7882c9c93;p=senf.git diff --git a/Packets/DefaultBundle/EthernetPacket.test.cc b/Packets/DefaultBundle/EthernetPacket.test.cc index e569894..397f6f5 100644 --- a/Packets/DefaultBundle/EthernetPacket.test.cc +++ b/Packets/DefaultBundle/EthernetPacket.test.cc @@ -27,7 +27,7 @@ // Custom includes #include "EthernetPacket.hh" -#include "Packets/DataPacket.hh" +#include "IpV4Packet.hh" #include #include @@ -69,6 +69,26 @@ BOOST_AUTO_UNIT_TEST(ethernetPacket_chain) BOOST_CHECK_EQUAL( *v.next().data().begin(), 0xf0 ); } +BOOST_AUTO_UNIT_TEST(ethernetPacket_create) +{ + senf::EthernetPacket eth (senf::EthernetPacket::create()); + eth->source() = senf::MACAddress::from_string("01:02:03:04:05:06"); + eth->destination() = senf::MACAddress::from_string("07:08:09:0a:0b:0c"); + + senf::EthVLanPacket vlan (senf::EthVLanPacket::createAfter(eth)); + vlan->priority() = 9u; + vlan->cfi() = true; + vlan->vlanId() = 0x234u; + + eth.finalize(); + BOOST_CHECK_EQUAL(eth->type(), 0x8100u); + BOOST_CHECK_EQUAL(vlan->type(), 0u); + + senf::IpV4Packet ip (senf::IpV4Packet::createAfter(vlan)); + eth.finalize(); + BOOST_CHECK_EQUAL(vlan->type(), 0x0800u); +} + ///////////////////////////////cc.e//////////////////////////////////////// #undef prefix_