DHTMessageTrackerEntryTest.cc 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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(), 30_s);
  33. CPPUNIT_ASSERT(entry.match(msg1->getTransactionID(),
  34. msg1->getRemoteNode()->getIPAddress(),
  35. msg1->getRemoteNode()->getPort()));
  36. CPPUNIT_ASSERT(!entry.match(msg2->getTransactionID(),
  37. msg2->getRemoteNode()->getIPAddress(),
  38. msg2->getRemoteNode()->getPort()));
  39. }
  40. catch (Exception& e) {
  41. CPPUNIT_FAIL(e.stackTrace());
  42. }
  43. }
  44. void DHTMessageTrackerEntryTest::testHandleTimeout() {}
  45. } // namespace aria2