DHTMessageTrackerEntryTest.cc 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #include "DHTMessageTrackerEntry.h"
  2. #include <iostream>
  3. #include <cppunit/extensions/HelperMacros.h>
  4. #include "Exception.h"
  5. #include "util.h"
  6. #include "MockDHTMessage.h"
  7. #include "DHTNode.h"
  8. #include "DHTMessageCallback.h"
  9. namespace aria2 {
  10. class DHTMessageTrackerEntryTest:public CppUnit::TestFixture {
  11. CPPUNIT_TEST_SUITE(DHTMessageTrackerEntryTest);
  12. CPPUNIT_TEST(testMatch);
  13. CPPUNIT_TEST(testHandleTimeout);
  14. CPPUNIT_TEST_SUITE_END();
  15. public:
  16. void setUp() {}
  17. void tearDown() {}
  18. void testMatch();
  19. void testHandleTimeout();
  20. };
  21. CPPUNIT_TEST_SUITE_REGISTRATION(DHTMessageTrackerEntryTest);
  22. void DHTMessageTrackerEntryTest::testMatch()
  23. {
  24. auto localNode = std::make_shared<DHTNode>();
  25. try {
  26. auto node1 = std::make_shared<DHTNode>();
  27. auto msg1 = make_unique<MockDHTMessage>(localNode, node1);
  28. auto node2 = std::make_shared<DHTNode>();
  29. auto msg2 = make_unique<MockDHTMessage>(localNode, node2);
  30. DHTMessageTrackerEntry entry(msg1->getRemoteNode(),
  31. msg1->getTransactionID(),
  32. msg1->getMessageType(),
  33. 30);
  34. CPPUNIT_ASSERT(entry.match(msg1->getTransactionID(),
  35. msg1->getRemoteNode()->getIPAddress(),
  36. msg1->getRemoteNode()->getPort()));
  37. CPPUNIT_ASSERT(!entry.match(msg2->getTransactionID(),
  38. msg2->getRemoteNode()->getIPAddress(),
  39. msg2->getRemoteNode()->getPort()));
  40. } catch(Exception& e) {
  41. CPPUNIT_FAIL(e.stackTrace());
  42. }
  43. }
  44. void DHTMessageTrackerEntryTest::testHandleTimeout()
  45. {
  46. }
  47. } // namespace aria2