Protocols::BitTorrent::Packets::Testing::PortTest Class Reference

Inherits TestFixture.

Inheritance diagram for Protocols::BitTorrent::Packets::Testing::PortTest:

Inheritance graph
[legend]
Collaboration diagram for Protocols::BitTorrent::Packets::Testing::PortTest:

Collaboration graph
[legend]
List of all members.

Detailed Description

Tests for the packet class Port.

scenarioReadPacket() verifies that a packet's payload and header fields are a) correctly parsed from raw bytes, or b) could not be parsed.

scenarioWritePacket() verifies that a packet's payload and header fields are correctly written as raw bytes.

scenarioReadSetWritePacket() verifies that the fields of a correctly read packet could be modified and written as raw bytes.

Blackbox considerations:

Definition at line 51 of file PortTest.cpp.

Public Member Functions

void setUp ()
void tearDown ()
void scenarioReadPacket (const QByteArray &rawHeader, const QByteArray &rawPayload, bool parsedOk, quint16 listenPort)
 Tests parsing the packet fields from raw bytes.
void scenarioWritePacket (quint16 listenPort, const QByteArray &rawHeader, const QByteArray &rawPayload)
 Tests writing the packet fields as raw bytes.
void scenarioReadSetWritePacket (const QByteArray &rawHeader, const QByteArray &rawPayload, quint16 listenPort, const QByteArray &rawHeader2, const QByteArray &rawPayload2)
 Tests parsing a packet, modifying the fields then writing it again.
void testPacketProperties ()
 Tests constant packet properties.
void testReadPacketOK ()
void testReadPacketFails ()
void testWritePacketOK ()
void testReadSetWritePacketOK ()

Private Member Functions

 CPPUNIT_TEST_SUITE (PortTest)
 CPPUNIT_TEST (testPacketProperties)
 CPPUNIT_TEST (testReadPacketOK)
 CPPUNIT_TEST (testReadPacketFails)
 CPPUNIT_TEST (testWritePacketOK)
 CPPUNIT_TEST (testReadSetWritePacketOK)
 CPPUNIT_TEST_SUITE_END ()

Private Attributes

auto_ptr< Portpacket


Member Function Documentation

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST testReadSetWritePacketOK   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST testWritePacketOK   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST testReadPacketFails   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST testReadPacketOK   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST testPacketProperties   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST_SUITE PortTest   )  [private]
 

Protocols::BitTorrent::Packets::Testing::PortTest::CPPUNIT_TEST_SUITE_END  )  [private]
 

void Protocols::BitTorrent::Packets::Testing::PortTest::scenarioReadPacket const QByteArray &  rawHeader,
const QByteArray &  rawPayload,
bool  parsedOk,
quint16  listenPort
[inline]
 

Tests parsing the packet fields from raw bytes.

Parses raw bytes and then verifies that all payload fields have correct values.

Definition at line 79 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::scenarioReadSetWritePacket const QByteArray &  rawHeader,
const QByteArray &  rawPayload,
quint16  listenPort,
const QByteArray &  rawHeader2,
const QByteArray &  rawPayload2
[inline]
 

Tests parsing a packet, modifying the fields then writing it again.

This scenario implicitly tests blackbox behavior!

The main aim of this scenario is to verify that the payload fields are invalidated (blackbox behavior) after setting them and that the correct values are written afterwards. As single test case for this scenario will be enough.

Definition at line 112 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::scenarioWritePacket quint16  listenPort,
const QByteArray &  rawHeader,
const QByteArray &  rawPayload
[inline]
 

Tests writing the packet fields as raw bytes.

Sets the fields of a default constructed object and verifies that they are correctly written as write bytes.

Definition at line 94 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::setUp  )  [inline]
 

Definition at line 64 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::tearDown  )  [inline]
 

Definition at line 69 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::testPacketProperties  )  [inline]
 

Tests constant packet properties.

Definition at line 126 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::testReadPacketFails  )  [inline]
 

Definition at line 140 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::testReadPacketOK  )  [inline]
 

Definition at line 132 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::testReadSetWritePacketOK  )  [inline]
 

Definition at line 155 of file PortTest.cpp.

void Protocols::BitTorrent::Packets::Testing::PortTest::testWritePacketOK  )  [inline]
 

Definition at line 148 of file PortTest.cpp.


Member Data Documentation

auto_ptr<Port> Protocols::BitTorrent::Packets::Testing::PortTest::packet [private]
 

Definition at line 61 of file PortTest.cpp.


The documentation for this class was generated from the following file: