RequestGroupManTest.cc 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include "RequestGroupMan.h"
  2. #include <cppunit/extensions/HelperMacros.h>
  3. using namespace std;
  4. class RequestGroupManTest : public CppUnit::TestFixture {
  5. CPPUNIT_TEST_SUITE(RequestGroupManTest);
  6. CPPUNIT_TEST(testIsSameFileBeingDownloaded);
  7. CPPUNIT_TEST_SUITE_END();
  8. private:
  9. public:
  10. void setUp() {}
  11. void testIsSameFileBeingDownloaded();
  12. };
  13. CPPUNIT_TEST_SUITE_REGISTRATION( RequestGroupManTest );
  14. void RequestGroupManTest::testIsSameFileBeingDownloaded()
  15. {
  16. Option option;
  17. RequestGroupMan gm;
  18. RequestGroupHandle rg1 = new RequestGroup("http://localhost/aria2.tar.bz2",
  19. &option);
  20. RequestGroupHandle rg2 = new RequestGroup("http://localhost/aria2.tar.bz2",
  21. &option);
  22. gm.addRequestGroup(rg1);
  23. gm.addRequestGroup(rg2);
  24. rg1->initSegmentMan();
  25. rg2->initSegmentMan();
  26. rg1->getSegmentMan()->filename = "aria2.tar.bz2";
  27. rg2->getSegmentMan()->filename = "aria2.tar.bz2";
  28. CPPUNIT_ASSERT(gm.isSameFileBeingDownloaded(rg1.get()));
  29. rg2->getSegmentMan()->filename = "aria2-0.10.2.tar.bz2";
  30. CPPUNIT_ASSERT(!gm.isSameFileBeingDownloaded(rg1.get()));
  31. }