UTMetadataRequestTrackerTest.cc 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #include "UTMetadataRequestTracker.h"
  2. #include <cppunit/extensions/HelperMacros.h>
  3. namespace aria2 {
  4. class UTMetadataRequestTrackerTest : public CppUnit::TestFixture {
  5. CPPUNIT_TEST_SUITE(UTMetadataRequestTrackerTest);
  6. CPPUNIT_TEST(testAdd);
  7. CPPUNIT_TEST(testRemove);
  8. CPPUNIT_TEST(testGetAllTrackedIndex);
  9. CPPUNIT_TEST(testCount);
  10. CPPUNIT_TEST(testAvail);
  11. CPPUNIT_TEST_SUITE_END();
  12. public:
  13. void testAdd();
  14. void testRemove();
  15. void testGetAllTrackedIndex();
  16. void testCount();
  17. void testAvail();
  18. };
  19. CPPUNIT_TEST_SUITE_REGISTRATION(UTMetadataRequestTrackerTest);
  20. void UTMetadataRequestTrackerTest::testAdd()
  21. {
  22. UTMetadataRequestTracker tr;
  23. tr.add(1);
  24. CPPUNIT_ASSERT(tr.tracks(1));
  25. }
  26. void UTMetadataRequestTrackerTest::testRemove()
  27. {
  28. UTMetadataRequestTracker tr;
  29. tr.add(1);
  30. tr.remove(1);
  31. CPPUNIT_ASSERT(!tr.tracks(1));
  32. }
  33. void UTMetadataRequestTrackerTest::testGetAllTrackedIndex()
  34. {
  35. UTMetadataRequestTracker tr;
  36. tr.add(1);
  37. tr.add(2);
  38. std::vector<size_t> indexes = tr.getAllTrackedIndex();
  39. CPPUNIT_ASSERT_EQUAL((size_t)2, indexes.size());
  40. CPPUNIT_ASSERT_EQUAL((size_t)1, indexes[0]);
  41. CPPUNIT_ASSERT_EQUAL((size_t)2, indexes[1]);
  42. }
  43. void UTMetadataRequestTrackerTest::testCount()
  44. {
  45. UTMetadataRequestTracker tr;
  46. tr.add(1);
  47. tr.add(2);
  48. CPPUNIT_ASSERT_EQUAL((size_t)2, tr.count());
  49. }
  50. void UTMetadataRequestTrackerTest::testAvail()
  51. {
  52. UTMetadataRequestTracker tr;
  53. CPPUNIT_ASSERT_EQUAL((size_t)1, tr.avail());
  54. tr.add(1);
  55. CPPUNIT_ASSERT_EQUAL((size_t)0, tr.avail());
  56. tr.add(2);
  57. CPPUNIT_ASSERT_EQUAL((size_t)0, tr.avail());
  58. }
  59. } // namespace aria2