// Free Software Foundation, Inc.,
// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-// Unit tests
+/** \file
+ \brief TransportPacket unit tests */
//#include "TransportPacket.test.hh"
//#include "TransportPacket.test.ih"
#include "../../Utils/auto_unit_test.hh"
#include <boost/test/test_tools.hpp>
-#include <senf/Utils/hexdump.hh>
#define prefix_
///////////////////////////////cc.p////////////////////////////////////////
{
// TransportStream-Packet containing a ULE encoded IPv6 ping packet,
// captured with dvbsnoop
- unsigned char data[] = {
+ unsigned char data[] = {
// Transport Packet Header
- 0x47, 0x41, 0x0f, 0x1e,
+ 0x47, 0x41, 0x0f, 0x1e,
// Payload Pointer
- 0x00,
+ 0x00,
// SNDU Header
0x80, 0x4c, 0x86, 0xdd,
// IPv6 Packet
0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x11, 0x40,
0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x7c, 0x7e, 0xff, 0xfe, 0x23, 0x68, 0xaf,
- 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04,
0x02, 0x8c, 0x02, 0x8c, 0x00, 0x20, 0x58, 0xe1,
0x11, 0x05, 0x12, 0x67, 0x06, 0x2f, 0x01, 0x00,
0x20, 0x01, 0x06, 0x38, 0x04, 0x09, 0x10, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00,
// SNDU footer (crc-32)
- 0x1d, 0xc4, 0xe8, 0xc1,
+ 0x1d, 0xc4, 0xe8, 0xc1,
// Transport Packet stuffing
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
};
-
+
TransportPacket p (TransportPacket::create(data));
BOOST_CHECK_EQUAL( p->sync_byte(), TransportPacketType::SYNC_BYTE+0 );
BOOST_CHECK_EQUAL( p->transport_scrmbl_ctrl(), 0x0u );
BOOST_CHECK_EQUAL( p->adaptation_field_ctrl(), 0x1u );
BOOST_CHECK_EQUAL( p->continuity_counter(), 0x0eu );
- BOOST_CHECK_EQUAL( p->pointer_field(), 0x0u );
+ BOOST_CHECK_EQUAL( p->pointer_field(), 0x0u );
+
+ std::ostringstream oss (std::ostringstream::out);
+ SENF_CHECK_NO_THROW( p.dump( oss));
}
ts_packet->setPUSI(true);
ts_packet->pid() = 0x010fu;
ts_packet->continuity_counter() = 0x0eu;
-
- unsigned char payload_data[] = { // see test above
+
+ unsigned char payload_data[] = { // see test above
// SNDU Header
0x80, 0x4c, 0x86, 0xdd,
// IPv6 Packet
0x60, 0x00, 0x00, 0x00, 0x00, 0x20, 0x11, 0x40,
0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x7c, 0x7e, 0xff, 0xfe, 0x23, 0x68, 0xaf,
- 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04,
0x02, 0x8c, 0x02, 0x8c, 0x00, 0x20, 0x58, 0xe1,
0x11, 0x05, 0x12, 0x67, 0x06, 0x2f, 0x01, 0x00,
0x1d, 0xc4, 0xe8, 0xc1
};
senf::DataPacket payload (senf::DataPacket::createAfter( ts_packet, payload_data));
-
- //TransportPacketType::addStuffingPacketAfter( ts_packet);
-
- //senf::hexdump(ts_packet.data().begin(), ts_packet.data().end(), std::cout);
+
+ // TODO: add method for stuffing
}
///////////////////////////////cc.e////////////////////////////////////////
#undef prefix_
-\f
+
// Local Variables:
// mode: c++
// fill-column: 100