TimeTest.cc 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #include "TimeA2.h"
  2. #include "Exception.h"
  3. #include "Util.h"
  4. #include <iostream>
  5. #include <cppunit/extensions/HelperMacros.h>
  6. namespace aria2 {
  7. class TimeTest:public CppUnit::TestFixture {
  8. CPPUNIT_TEST_SUITE(TimeTest);
  9. CPPUNIT_TEST(testParseRFC1123);
  10. CPPUNIT_TEST(testParseRFC850);
  11. CPPUNIT_TEST(testParseRFC850Ext);
  12. CPPUNIT_TEST(testParseHTTPDate);
  13. CPPUNIT_TEST_SUITE_END();
  14. public:
  15. void setUp() {}
  16. void tearDown() {}
  17. void testParseRFC1123();
  18. void testParseRFC850();
  19. void testParseRFC850Ext();
  20. void testParseHTTPDate();
  21. };
  22. CPPUNIT_TEST_SUITE_REGISTRATION(TimeTest);
  23. void TimeTest::testParseRFC1123()
  24. {
  25. Time t1 = Time::parseRFC1123("Sat, 06 Sep 2008 15:26:33 GMT");
  26. CPPUNIT_ASSERT_EQUAL((time_t)1220714793, t1.getTime());
  27. }
  28. void TimeTest::testParseRFC850()
  29. {
  30. Time t1 = Time::parseRFC850("Saturday, 06-Sep-08 15:26:33 GMT");
  31. CPPUNIT_ASSERT_EQUAL((time_t)1220714793, t1.getTime());
  32. }
  33. void TimeTest::testParseRFC850Ext()
  34. {
  35. Time t1 = Time::parseRFC850Ext("Saturday, 06-Sep-2008 15:26:33 GMT");
  36. CPPUNIT_ASSERT_EQUAL((time_t)1220714793, t1.getTime());
  37. }
  38. void TimeTest::testParseHTTPDate()
  39. {
  40. CPPUNIT_ASSERT_EQUAL((time_t)1220714793,
  41. Time::parseHTTPDate
  42. ("Sat, 06 Sep 2008 15:26:33 GMT").getTime());
  43. CPPUNIT_ASSERT_EQUAL((time_t)1220714793,
  44. Time::parseHTTPDate
  45. ("Sat, 06-Sep-2008 15:26:33 GMT").getTime());
  46. CPPUNIT_ASSERT_EQUAL((time_t)1220714793,
  47. Time::parseHTTPDate
  48. ("Sat, 06-Sep-08 15:26:33 GMT").getTime());
  49. CPPUNIT_ASSERT_EQUAL((time_t)-1,
  50. Time::parseHTTPDate
  51. ("Sat, 2008-09-06 15:26:33 GMT").getTime());
  52. }
  53. } // namespace aria2