HttpHeaderTest.cc 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include "HttpHeader.h"
  2. #include "Range.h"
  3. #include <cppunit/extensions/HelperMacros.h>
  4. namespace aria2 {
  5. class HttpHeaderTest:public CppUnit::TestFixture {
  6. CPPUNIT_TEST_SUITE(HttpHeaderTest);
  7. CPPUNIT_TEST(testGetRange);
  8. CPPUNIT_TEST_SUITE_END();
  9. public:
  10. void testGetRange();
  11. };
  12. CPPUNIT_TEST_SUITE_REGISTRATION( HttpHeaderTest );
  13. void HttpHeaderTest::testGetRange()
  14. {
  15. {
  16. HttpHeader httpHeader;
  17. httpHeader.put("Content-Range", "bytes 1-499/1234");
  18. SharedHandle<Range> range = httpHeader.getRange();
  19. CPPUNIT_ASSERT_EQUAL((int64_t)1, range->getStartByte());
  20. CPPUNIT_ASSERT_EQUAL((int64_t)499, range->getEndByte());
  21. CPPUNIT_ASSERT_EQUAL((int64_t)1234, range->getEntityLength());
  22. }
  23. {
  24. HttpHeader httpHeader;
  25. httpHeader.put("Content-Range",
  26. "9223372036854775800-9223372036854775801/9223372036854775807");
  27. SharedHandle<Range> range = httpHeader.getRange();
  28. CPPUNIT_ASSERT_EQUAL(9223372036854775800LL, range->getStartByte());
  29. CPPUNIT_ASSERT_EQUAL(9223372036854775801LL, range->getEndByte());
  30. CPPUNIT_ASSERT_EQUAL(9223372036854775807LL, range->getEntityLength());
  31. }
  32. }
  33. } // namespace aria2