summaryrefslogtreecommitdiff
path: root/test/DefaultBtMessageDispatcherTest.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2013-06-30 00:31:50 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2013-06-30 00:31:50 +0900
commit03ae308faaa9188db0c246f859fba291f9b108e7 (patch)
tree099214a3d5a37f89d7da1515e750b72c69d1b333 /test/DefaultBtMessageDispatcherTest.cc
parentd128a39fb6d9ecf4f26af9858852bcd2ab8935dd (diff)
Use RequestSlot as pointer to avoid copying
Diffstat (limited to 'test/DefaultBtMessageDispatcherTest.cc')
-rw-r--r--test/DefaultBtMessageDispatcherTest.cc83
1 files changed, 40 insertions, 43 deletions
diff --git a/test/DefaultBtMessageDispatcherTest.cc b/test/DefaultBtMessageDispatcherTest.cc
index c7e38e0f..0100df75 100644
--- a/test/DefaultBtMessageDispatcherTest.cc
+++ b/test/DefaultBtMessageDispatcherTest.cc
@@ -248,9 +248,7 @@ void DefaultBtMessageDispatcherTest::testDoCancelSendingPieceAction() {
int MY_PIECE_LENGTH = 16*1024;
void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing() {
- std::shared_ptr<Piece> piece(new Piece(0, MY_PIECE_LENGTH));
- RequestSlot slot(0, 0, MY_PIECE_LENGTH, 0, piece);
-
+ auto piece = std::make_shared<Piece>(0, MY_PIECE_LENGTH);
size_t index;
CPPUNIT_ASSERT(piece->getMissingUnusedBlockIndex(index));
CPPUNIT_ASSERT_EQUAL((size_t)0, index);
@@ -260,7 +258,8 @@ void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing() {
btMessageDispatcher->setRequestTimeout(60);
btMessageDispatcher->setPieceStorage(pieceStorage.get());
- btMessageDispatcher->addOutstandingRequest(slot);
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(0, 0, MY_PIECE_LENGTH, 0, piece));
btMessageDispatcher->checkRequestSlotAndDoNecessaryThing();
@@ -270,12 +269,9 @@ void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing() {
btMessageDispatcher->getRequestSlots().size());
}
-void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing_timeout() {
- std::shared_ptr<Piece> piece(new Piece(0, MY_PIECE_LENGTH));
- RequestSlot slot(0, 0, MY_PIECE_LENGTH, 0, piece);
- // make this slot timeout
- slot.setDispatchedTime(0);
-
+void DefaultBtMessageDispatcherTest::
+testCheckRequestSlotAndDoNecessaryThing_timeout() {
+ auto piece = std::make_shared<Piece>(0, MY_PIECE_LENGTH);
size_t index;
CPPUNIT_ASSERT(piece->getMissingUnusedBlockIndex(index));
CPPUNIT_ASSERT_EQUAL((size_t)0, index);
@@ -285,8 +281,10 @@ void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing_tim
btMessageDispatcher->setRequestTimeout(60);
btMessageDispatcher->setPieceStorage(pieceStorage.get());
- btMessageDispatcher->addOutstandingRequest(slot);
-
+ auto slot = make_unique<RequestSlot>(0, 0, MY_PIECE_LENGTH, 0, piece);
+ // make this slot timeout
+ slot->setDispatchedTime(0);
+ btMessageDispatcher->addOutstandingRequest(std::move(slot));
btMessageDispatcher->checkRequestSlotAndDoNecessaryThing();
CPPUNIT_ASSERT_EQUAL((size_t)0,
@@ -297,18 +295,17 @@ void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing_tim
CPPUNIT_ASSERT_EQUAL(true, peer->snubbing());
}
-void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing_completeBlock() {
- std::shared_ptr<Piece> piece(new Piece(0, MY_PIECE_LENGTH));
+void DefaultBtMessageDispatcherTest::
+testCheckRequestSlotAndDoNecessaryThing_completeBlock() {
+ auto piece = std::make_shared<Piece>(0, MY_PIECE_LENGTH);
piece->completeBlock(0);
-
- RequestSlot slot(0, 0, MY_PIECE_LENGTH, 0, piece);
-
auto pieceStorage = make_unique<MockPieceStorage2>();
pieceStorage->setPiece(piece);
btMessageDispatcher->setRequestTimeout(60);
btMessageDispatcher->setPieceStorage(pieceStorage.get());
- btMessageDispatcher->addOutstandingRequest(slot);
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(0, 0, MY_PIECE_LENGTH, 0, piece));
btMessageDispatcher->checkRequestSlotAndDoNecessaryThing();
@@ -319,15 +316,15 @@ void DefaultBtMessageDispatcherTest::testCheckRequestSlotAndDoNecessaryThing_com
}
void DefaultBtMessageDispatcherTest::testCountOutstandingRequest() {
- RequestSlot slot(0, 0, MY_PIECE_LENGTH, 0);
- btMessageDispatcher->addOutstandingRequest(slot);
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(0, 0, MY_PIECE_LENGTH, 0));
CPPUNIT_ASSERT_EQUAL((size_t)1,
btMessageDispatcher->countOutstandingRequest());
}
void DefaultBtMessageDispatcherTest::testIsOutstandingRequest() {
- RequestSlot slot(0, 0, MY_PIECE_LENGTH, 0);
- btMessageDispatcher->addOutstandingRequest(slot);
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(0, 0, MY_PIECE_LENGTH, 0));
CPPUNIT_ASSERT(btMessageDispatcher->isOutstandingRequest(0, 0));
CPPUNIT_ASSERT(!btMessageDispatcher->isOutstandingRequest(0, 1));
@@ -336,42 +333,42 @@ void DefaultBtMessageDispatcherTest::testIsOutstandingRequest() {
}
void DefaultBtMessageDispatcherTest::testGetOutstandingRequest() {
- RequestSlot slot(1, 1024, 16*1024, 10);
- btMessageDispatcher->addOutstandingRequest(slot);
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(1, 1024, 16*1024, 10));
- RequestSlot s2 = btMessageDispatcher->getOutstandingRequest(1, 1024, 16*1024);
- CPPUNIT_ASSERT(!RequestSlot::isNull(s2));
+ CPPUNIT_ASSERT(btMessageDispatcher->getOutstandingRequest(1, 1024, 16*1024));
- RequestSlot s3 = btMessageDispatcher->getOutstandingRequest(1, 1024, 17*1024);
- CPPUNIT_ASSERT(RequestSlot::isNull(s3));
+ CPPUNIT_ASSERT(!btMessageDispatcher->
+ getOutstandingRequest(1, 1024, 17*1024));
- RequestSlot s4 =
- btMessageDispatcher->getOutstandingRequest(1, 2*1024, 16*1024);
- CPPUNIT_ASSERT(RequestSlot::isNull(s4));
+ CPPUNIT_ASSERT(!btMessageDispatcher->
+ getOutstandingRequest(1, 2*1024, 16*1024));
- RequestSlot s5 = btMessageDispatcher->getOutstandingRequest(2, 1024, 16*1024);
- CPPUNIT_ASSERT(RequestSlot::isNull(s5));
+ CPPUNIT_ASSERT(!btMessageDispatcher->
+ getOutstandingRequest(2, 1024, 16*1024));
}
void DefaultBtMessageDispatcherTest::testRemoveOutstandingRequest() {
- std::shared_ptr<Piece> piece(new Piece(1, 1024*1024));
+ auto piece = std::make_shared<Piece>(1, 1024*1024);
size_t blockIndex = 0;
CPPUNIT_ASSERT(piece->getMissingUnusedBlockIndex(blockIndex));
uint32_t begin = blockIndex*piece->getBlockLength();
size_t length = piece->getBlockLength(blockIndex);
- RequestSlot slot(piece->getIndex(), begin, length, blockIndex, piece);
- btMessageDispatcher->addOutstandingRequest(slot);
-
- RequestSlot s2 = btMessageDispatcher->getOutstandingRequest
- (piece->getIndex(), begin, length);
- CPPUNIT_ASSERT(!RequestSlot::isNull(s2));
+ RequestSlot slot;
+ btMessageDispatcher->addOutstandingRequest
+ (make_unique<RequestSlot>(piece->getIndex(), begin, length, blockIndex,
+ piece));
+
+ auto s2 = btMessageDispatcher->getOutstandingRequest(piece->getIndex(),
+ begin, length);
+ CPPUNIT_ASSERT(s2);
CPPUNIT_ASSERT(piece->isBlockUsed(blockIndex));
btMessageDispatcher->removeOutstandingRequest(s2);
- RequestSlot s3 = btMessageDispatcher->getOutstandingRequest
- (piece->getIndex(), begin, length);
- CPPUNIT_ASSERT(RequestSlot::isNull(s3));
+ auto s3 = btMessageDispatcher->getOutstandingRequest(piece->getIndex(),
+ begin, length);
+ CPPUNIT_ASSERT(!s3);
CPPUNIT_ASSERT(!piece->isBlockUsed(blockIndex));
}