1.1 --- a/src/internet-stack/udp-test.cc Thu Oct 01 12:38:12 2009 +0200
1.2 +++ b/src/internet-stack/udp-test.cc Thu Oct 01 15:20:54 2009 +0400
1.3 @@ -21,7 +21,6 @@
1.4 * This is the test code for udp-socket-impl.cc, it was moved out of udp-socket-impl.cc to
1.5 * be in an independent file for clarity purposes.
1.6 */
1.7 -#ifdef RUN_SELF_TESTS
1.8
1.9 #include "ns3/test.h"
1.10 #include "ns3/socket-factory.h"
1.11 @@ -74,13 +73,13 @@
1.12 }
1.13
1.14
1.15 -class UdpSocketImplTest: public Test
1.16 +class UdpSocketImplTest: public TestCase
1.17 {
1.18 Ptr<Packet> m_receivedPacket;
1.19 Ptr<Packet> m_receivedPacket2;
1.20
1.21 public:
1.22 - virtual bool RunTests (void);
1.23 + virtual bool DoRun (void);
1.24 UdpSocketImplTest ();
1.25
1.26 void ReceivePacket (Ptr<Socket> socket, Ptr<Packet> packet, const Address &from);
1.27 @@ -91,7 +90,7 @@
1.28
1.29
1.30 UdpSocketImplTest::UdpSocketImplTest ()
1.31 - : Test ("UdpSocketImpl")
1.32 + : TestCase ("UDP socket implementation")
1.33 {
1.34 }
1.35
1.36 @@ -122,10 +121,8 @@
1.37 }
1.38
1.39 bool
1.40 -UdpSocketImplTest::RunTests (void)
1.41 +UdpSocketImplTest::DoRun (void)
1.42 {
1.43 - bool result = true;
1.44 -
1.45 // Create topology
1.46
1.47 // Receiver Node
1.48 @@ -193,12 +190,12 @@
1.49 // Create the UDP sockets
1.50 Ptr<SocketFactory> rxSocketFactory = rxNode->GetObject<UdpSocketFactory> ();
1.51 Ptr<Socket> rxSocket = rxSocketFactory->CreateSocket ();
1.52 - NS_TEST_ASSERT_EQUAL (rxSocket->Bind (InetSocketAddress (Ipv4Address ("10.0.0.1"), 1234)), 0);
1.53 + NS_TEST_EXPECT_MSG_EQ (rxSocket->Bind (InetSocketAddress (Ipv4Address ("10.0.0.1"), 1234)), 0, "trivial");
1.54 rxSocket->SetRecvCallback (MakeCallback (&UdpSocketImplTest::ReceivePkt, this));
1.55
1.56 Ptr<Socket> rxSocket2 = rxSocketFactory->CreateSocket ();
1.57 rxSocket2->SetRecvCallback (MakeCallback (&UdpSocketImplTest::ReceivePkt2, this));
1.58 - NS_TEST_ASSERT_EQUAL (rxSocket2->Bind (InetSocketAddress (Ipv4Address ("10.0.1.1"), 1234)), 0);
1.59 + NS_TEST_EXPECT_MSG_EQ (rxSocket2->Bind (InetSocketAddress (Ipv4Address ("10.0.1.1"), 1234)), 0, "trivial");
1.60
1.61 Ptr<SocketFactory> txSocketFactory = txNode->GetObject<UdpSocketFactory> ();
1.62 Ptr<Socket> txSocket = txSocketFactory->CreateSocket ();
1.63 @@ -208,11 +205,11 @@
1.64 // Unicast test
1.65 m_receivedPacket = Create<Packet> ();
1.66 m_receivedPacket2 = Create<Packet> ();
1.67 - NS_TEST_ASSERT_EQUAL (txSocket->SendTo ( Create<Packet> (123), 0,
1.68 - InetSocketAddress (Ipv4Address("10.0.0.1"), 1234)), 123);
1.69 + NS_TEST_EXPECT_MSG_EQ (txSocket->SendTo ( Create<Packet> (123), 0,
1.70 + InetSocketAddress (Ipv4Address("10.0.0.1"), 1234)), 123, "trivial");
1.71 Simulator::Run ();
1.72 - NS_TEST_ASSERT_EQUAL (m_receivedPacket->GetSize (), 123);
1.73 - NS_TEST_ASSERT_EQUAL (m_receivedPacket2->GetSize (), 0); // second interface should receive it
1.74 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket->GetSize (), 123, "trivial");
1.75 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket2->GetSize (), 0, "second interface should receive it");
1.76
1.77 m_receivedPacket->RemoveAllByteTags ();
1.78 m_receivedPacket2->RemoveAllByteTags ();
1.79 @@ -221,12 +218,11 @@
1.80
1.81 m_receivedPacket = Create<Packet> ();
1.82 m_receivedPacket2 = Create<Packet> ();
1.83 - NS_TEST_ASSERT_EQUAL (txSocket->SendTo ( Create<Packet> (123), 0,
1.84 - InetSocketAddress (Ipv4Address("255.255.255.255"), 1234)), 123);
1.85 + NS_TEST_EXPECT_MSG_EQ (txSocket->SendTo ( Create<Packet> (123), 0,
1.86 + InetSocketAddress (Ipv4Address("255.255.255.255"), 1234)), 123, "trivial");
1.87 Simulator::Run ();
1.88 - NS_TEST_ASSERT_EQUAL (m_receivedPacket->GetSize (), 123);
1.89 - // second socket should not receive it (it is bound specifically to the second interface's address
1.90 - NS_TEST_ASSERT_EQUAL (m_receivedPacket2->GetSize (), 0);
1.91 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket->GetSize (), 123, "trivial");
1.92 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket2->GetSize (), 0, "second socket should not receive it (it is bound specifically to the second interface's address");
1.93
1.94 m_receivedPacket->RemoveAllByteTags ();
1.95 m_receivedPacket2->RemoveAllByteTags ();
1.96 @@ -239,26 +235,31 @@
1.97 rxSocket2->Dispose ();
1.98 rxSocket2 = rxSocketFactory->CreateSocket ();
1.99 rxSocket2->SetRecvCallback (MakeCallback (&UdpSocketImplTest::ReceivePkt2, this));
1.100 - NS_TEST_ASSERT_EQUAL (rxSocket2->Bind (InetSocketAddress (Ipv4Address ("0.0.0.0"), 1234)), 0);
1.101 + NS_TEST_EXPECT_MSG_EQ (rxSocket2->Bind (InetSocketAddress (Ipv4Address ("0.0.0.0"), 1234)), 0, "trivial");
1.102
1.103 m_receivedPacket = Create<Packet> ();
1.104 m_receivedPacket2 = Create<Packet> ();
1.105 - NS_TEST_ASSERT_EQUAL (txSocket->SendTo (Create<Packet> (123), 0,
1.106 -InetSocketAddress (Ipv4Address("255.255.255.255"), 1234)), 123);
1.107 + NS_TEST_EXPECT_MSG_EQ (txSocket->SendTo (Create<Packet> (123), 0,
1.108 + InetSocketAddress (Ipv4Address("255.255.255.255"), 1234)), 123, "trivial");
1.109 Simulator::Run ();
1.110 - NS_TEST_ASSERT_EQUAL (m_receivedPacket->GetSize (), 123);
1.111 - NS_TEST_ASSERT_EQUAL (m_receivedPacket2->GetSize (), 123);
1.112 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket->GetSize (), 123, "trivial");
1.113 + NS_TEST_EXPECT_MSG_EQ (m_receivedPacket2->GetSize (), 123, "trivial");
1.114
1.115 m_receivedPacket = 0;
1.116 m_receivedPacket2 = 0;
1.117
1.118 Simulator::Destroy ();
1.119
1.120 - return result;
1.121 + return GetErrorStatus ();
1.122 }
1.123 -
1.124 -static UdpSocketImplTest gUdpSocketImplTest;
1.125 +//-----------------------------------------------------------------------------
1.126 +class UdpTestSuite : public TestSuite
1.127 +{
1.128 +public:
1.129 + UdpTestSuite () : TestSuite ("udp", UNIT)
1.130 + {
1.131 + AddTestCase (new UdpSocketImplTest);
1.132 + }
1.133 +} g_udpTestSuite;
1.134
1.135 }; // namespace ns3
1.136 -
1.137 -#endif /* RUN_SELF_TESTS */