mirror of
https://github.com/aria2/aria2.git
synced 2025-04-05 13:37:40 +03:00
Use std::unique_ptr in DHTRegistry
This commit is contained in:
parent
1a5d75e819
commit
f022402dc9
28 changed files with 212 additions and 201 deletions
|
@ -35,16 +35,15 @@ CPPUNIT_TEST_SUITE_REGISTRATION(DHTRoutingTableTest);
|
|||
|
||||
void DHTRoutingTableTest::testAddNode()
|
||||
{
|
||||
std::shared_ptr<DHTNode> localNode(new DHTNode());
|
||||
auto localNode = std::make_shared<DHTNode>();
|
||||
DHTRoutingTable table(localNode);
|
||||
std::shared_ptr<MockDHTTaskFactory> taskFactory(new MockDHTTaskFactory());
|
||||
table.setTaskFactory(taskFactory);
|
||||
std::shared_ptr<MockDHTTaskQueue> taskQueue(new MockDHTTaskQueue());
|
||||
table.setTaskQueue(taskQueue);
|
||||
auto taskFactory = make_unique<MockDHTTaskFactory>();
|
||||
table.setTaskFactory(taskFactory.get());
|
||||
auto taskQueue = make_unique<MockDHTTaskQueue>();
|
||||
table.setTaskQueue(taskQueue.get());
|
||||
uint32_t count = 0;
|
||||
for(int i = 0; i < 100; ++i) {
|
||||
std::shared_ptr<DHTNode> node(new DHTNode());
|
||||
if(table.addNode(node)) {
|
||||
if(table.addNode(std::make_shared<DHTNode>())) {
|
||||
++count;
|
||||
}
|
||||
}
|
||||
|
@ -53,14 +52,14 @@ void DHTRoutingTableTest::testAddNode()
|
|||
|
||||
void DHTRoutingTableTest::testAddNode_localNode()
|
||||
{
|
||||
std::shared_ptr<DHTNode> localNode(new DHTNode());
|
||||
auto localNode = std::make_shared<DHTNode>();
|
||||
DHTRoutingTable table(localNode);
|
||||
std::shared_ptr<MockDHTTaskFactory> taskFactory(new MockDHTTaskFactory());
|
||||
table.setTaskFactory(taskFactory);
|
||||
std::shared_ptr<MockDHTTaskQueue> taskQueue(new MockDHTTaskQueue());
|
||||
table.setTaskQueue(taskQueue);
|
||||
auto taskFactory = make_unique<MockDHTTaskFactory>();
|
||||
table.setTaskFactory(taskFactory.get());
|
||||
auto taskQueue = make_unique<MockDHTTaskQueue>();
|
||||
table.setTaskQueue(taskQueue.get());
|
||||
|
||||
std::shared_ptr<DHTNode> newNode(new DHTNode(localNode->getID()));
|
||||
auto newNode = std::make_shared<DHTNode>(localNode->getID());
|
||||
CPPUNIT_ASSERT(!table.addNode(newNode));
|
||||
}
|
||||
|
||||
|
@ -77,7 +76,7 @@ void DHTRoutingTableTest::testGetClosestKNodes()
|
|||
{
|
||||
unsigned char id[DHT_ID_LENGTH];
|
||||
createID(id, 0x81, 0);
|
||||
std::shared_ptr<DHTNode> localNode(new DHTNode(id));
|
||||
auto localNode = std::make_shared<DHTNode>(id);
|
||||
|
||||
DHTRoutingTable table(localNode);
|
||||
|
||||
|
@ -86,26 +85,27 @@ void DHTRoutingTableTest::testGetClosestKNodes()
|
|||
std::shared_ptr<DHTNode> nodes3[8];
|
||||
for(size_t i = 0; i < DHTBucket::K; ++i) {
|
||||
createID(id, 0xf0, i);
|
||||
nodes1[i].reset(new DHTNode(id));
|
||||
nodes1[i] = std::make_shared<DHTNode>(id);
|
||||
CPPUNIT_ASSERT(table.addNode(nodes1[i]));
|
||||
}
|
||||
for(size_t i = 0; i < DHTBucket::K; ++i) {
|
||||
createID(id, 0x80, i);
|
||||
nodes2[i].reset(new DHTNode(id));
|
||||
nodes2[i] = std::make_shared<DHTNode>(id);
|
||||
CPPUNIT_ASSERT(table.addNode(nodes2[i]));
|
||||
}
|
||||
for(size_t i = 0; i < DHTBucket::K; ++i) {
|
||||
createID(id, 0x70, i);
|
||||
nodes3[i].reset(new DHTNode(id));
|
||||
nodes3[i] = std::make_shared<DHTNode>(id);
|
||||
CPPUNIT_ASSERT(table.addNode(nodes3[i]));
|
||||
}
|
||||
{
|
||||
createID(id, 0x80, 0x10);
|
||||
std::vector<std::shared_ptr<DHTNode> > nodes;
|
||||
std::vector<std::shared_ptr<DHTNode>> nodes;
|
||||
table.getClosestKNodes(nodes, id);
|
||||
CPPUNIT_ASSERT_EQUAL((size_t)8, nodes.size());
|
||||
for(size_t i = 0; i < nodes.size(); ++i) {
|
||||
CPPUNIT_ASSERT(memcmp(nodes2[0]->getID(), nodes[0]->getID(), DHT_ID_LENGTH) == 0);
|
||||
CPPUNIT_ASSERT(memcmp(nodes2[0]->getID(), nodes[0]->getID(),
|
||||
DHT_ID_LENGTH) == 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue