| 91 | } |
| 92 | |
| 93 | void HttpRequestTest::testGetEndByte() |
| 94 | { |
| 95 | size_t index = 1; |
| 96 | size_t length = 1_m - 1_k; |
| 97 | size_t segmentLength = 1_m; |
| 98 | |
| 99 | HttpRequest httpRequest; |
| 100 | auto piece = std::make_shared<Piece>(index, length); |
| 101 | auto segment = std::make_shared<PiecedSegment>(segmentLength, piece); |
| 102 | auto fileEntry = std::make_shared<FileEntry>("file", segmentLength * 10, 0); |
| 103 | |
| 104 | CPPUNIT_ASSERT_EQUAL((int64_t)0LL, httpRequest.getEndByte()); |
| 105 | |
| 106 | httpRequest.setSegment(segment); |
| 107 | |
| 108 | CPPUNIT_ASSERT_EQUAL((int64_t)0LL, httpRequest.getEndByte()); |
| 109 | |
| 110 | auto request = std::make_shared<Request>(); |
| 111 | request->supportsPersistentConnection(true); |
| 112 | request->setPipeliningHint(true); |
| 113 | |
| 114 | httpRequest.setRequest(request); |
| 115 | httpRequest.setFileEntry(fileEntry); |
| 116 | |
| 117 | CPPUNIT_ASSERT_EQUAL((int64_t)(segmentLength * index + length - 1), |
| 118 | httpRequest.getEndByte()); |
| 119 | |
| 120 | // The end byte of FileEntry are placed inside segment |
| 121 | fileEntry->setLength(segmentLength + 100); |
| 122 | |
| 123 | CPPUNIT_ASSERT_EQUAL((int64_t)(segmentLength * index + 100 - 1), |
| 124 | httpRequest.getEndByte()); |
| 125 | |
| 126 | request->setPipeliningHint(false); |
| 127 | |
| 128 | CPPUNIT_ASSERT_EQUAL((int64_t)0LL, httpRequest.getEndByte()); |
| 129 | } |
| 130 | |
| 131 | void HttpRequestTest::testCreateRequest() |
| 132 | { |
nothing calls this directly
no test coverage detected