summaryrefslogtreecommitdiff
path: root/test/BtPieceMessageTest.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2013-06-30 16:55:15 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2013-06-30 22:55:43 +0900
commit098f1571be6f9d30d394eb83d35cc67f8e9ebcb0 (patch)
tree1fd7ae9d1173704f39291c5f438c3388a3ab3d65 /test/BtPieceMessageTest.cc
parentabcb0745ed3c60f17942ce65fb63159a157854ea (diff)
Wrap BtMessage objects by std::unique_ptr instead of std::shared_ptr
Diffstat (limited to 'test/BtPieceMessageTest.cc')
-rw-r--r--test/BtPieceMessageTest.cc54
1 files changed, 22 insertions, 32 deletions
diff --git a/test/BtPieceMessageTest.cc b/test/BtPieceMessageTest.cc
index d758d53c..285ba21f 100644
--- a/test/BtPieceMessageTest.cc
+++ b/test/BtPieceMessageTest.cc
@@ -15,6 +15,7 @@
#include "Piece.h"
#include "BtHandshakeMessage.h"
#include "DownloadContext.h"
+#include "BtRejectMessage.h"
namespace aria2 {
@@ -47,44 +48,33 @@ public:
void testCancelSendingPieceEvent_invalidate();
void testToString();
- class MockBtMessage2 : public MockBtMessage {
- public:
- size_t index;
- uint32_t begin;
- size_t length;
- public:
- MockBtMessage2(size_t index, uint32_t begin, size_t length):index(index), begin(begin), length(length) {}
-
- };
-
class MockBtMessageFactory2 : public MockBtMessageFactory {
public:
- virtual std::shared_ptr<BtMessage>
+ virtual std::unique_ptr<BtRejectMessage>
createRejectMessage(size_t index,
int32_t begin,
int32_t length) {
- std::shared_ptr<MockBtMessage2> msg(new MockBtMessage2(index, begin, length));
- return msg;
+ return make_unique<BtRejectMessage>(index, begin, length);
}
};
- std::shared_ptr<DownloadContext> dctx_;
- std::shared_ptr<MockBtMessageDispatcher> btMessageDispatcher;
- std::shared_ptr<MockBtMessageFactory> btMessageFactory_;
+ std::unique_ptr<DownloadContext> dctx_;
+ std::unique_ptr<MockBtMessageDispatcher> btMessageDispatcher;
+ std::unique_ptr<MockBtMessageFactory> btMessageFactory_;
std::shared_ptr<Peer> peer;
- std::shared_ptr<BtPieceMessage> msg;
+ std::unique_ptr<BtPieceMessage> msg;
void setUp() {
- dctx_.reset(new DownloadContext(16*1024, 256*1024, "/path/to/file"));
+ dctx_ = make_unique<DownloadContext>(16*1024, 256*1024, "/path/to/file");
- peer.reset(new Peer("host", 6969));
+ peer = std::make_shared<Peer>("host", 6969);
peer->allocateSessionResource(dctx_->getPieceLength(),
dctx_->getTotalLength());
- btMessageDispatcher.reset(new MockBtMessageDispatcher());
- btMessageFactory_.reset(new MockBtMessageFactory2());
+ btMessageDispatcher = make_unique<MockBtMessageDispatcher>();
+ btMessageFactory_ = make_unique<MockBtMessageFactory2>();
- msg.reset(new BtPieceMessage());
+ msg = make_unique<BtPieceMessage>();
msg->setIndex(1);
msg->setBegin(1024);
msg->setBlockLength(16*1024);
@@ -166,11 +156,11 @@ void BtPieceMessageTest::testChokingEvent_allowedFastEnabled() {
CPPUNIT_ASSERT(msg->isInvalidate());
CPPUNIT_ASSERT_EQUAL((size_t)1, btMessageDispatcher->messageQueue.size());
- auto rej = std::dynamic_pointer_cast<MockBtMessage2>
- (btMessageDispatcher->messageQueue.front());
- CPPUNIT_ASSERT_EQUAL((size_t)1, rej->index);
- CPPUNIT_ASSERT_EQUAL((uint32_t)1024, rej->begin);
- CPPUNIT_ASSERT_EQUAL((size_t)16*1024, rej->length);
+ auto rej = static_cast<const BtRejectMessage*>
+ (btMessageDispatcher->messageQueue.front().get());
+ CPPUNIT_ASSERT_EQUAL((size_t)1, rej->getIndex());
+ CPPUNIT_ASSERT_EQUAL((int32_t)1024, rej->getBegin());
+ CPPUNIT_ASSERT_EQUAL((int32_t)16*1024, rej->getLength());
}
void BtPieceMessageTest::testChokingEvent_inAmAllowedIndexSet() {
@@ -234,11 +224,11 @@ void BtPieceMessageTest::testCancelSendingPieceEvent_allowedFastEnabled() {
CPPUNIT_ASSERT(msg->isInvalidate());
CPPUNIT_ASSERT_EQUAL((size_t)1, btMessageDispatcher->messageQueue.size());
- auto rej = std::dynamic_pointer_cast<MockBtMessage2>
- (btMessageDispatcher->messageQueue.front());
- CPPUNIT_ASSERT_EQUAL((size_t)1, rej->index);
- CPPUNIT_ASSERT_EQUAL((uint32_t)1024, rej->begin);
- CPPUNIT_ASSERT_EQUAL((size_t)16*1024, rej->length);
+ auto rej = static_cast<const BtRejectMessage*>
+ (btMessageDispatcher->messageQueue.front().get());
+ CPPUNIT_ASSERT_EQUAL((size_t)1, rej->getIndex());
+ CPPUNIT_ASSERT_EQUAL((int32_t)1024, rej->getBegin());
+ CPPUNIT_ASSERT_EQUAL((int32_t)16*1024, rej->getLength());
}
void BtPieceMessageTest::testCancelSendingPieceEvent_invalidate() {