MCPcopy Create free account
hub / github.com/aria2/aria2 / testUpdate

Method testUpdate

test/DHTTaskExecutorTest.cc:22–46  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

20CPPUNIT_TEST_SUITE_REGISTRATION(DHTTaskExecutorTest);
21
22void DHTTaskExecutorTest::testUpdate()
23{
24 std::shared_ptr<DHTNode> rn;
25 DHTTaskExecutor tex(2);
26 std::shared_ptr<MockDHTTask> tasks[] = {
27 std::shared_ptr<MockDHTTask>(new MockDHTTask(rn)),
28 std::shared_ptr<MockDHTTask>(new MockDHTTask(rn)),
29 std::shared_ptr<MockDHTTask>(new MockDHTTask(rn)),
30 std::shared_ptr<MockDHTTask>(new MockDHTTask(rn))};
31 tasks[1]->finished_ = true;
32 for (size_t i = 0; i < arraySize(tasks); ++i) {
33 tex.addTask(tasks[i]);
34 }
35 CPPUNIT_ASSERT_EQUAL((size_t)0, tex.getExecutingTaskSize());
36 CPPUNIT_ASSERT_EQUAL((size_t)4, tex.getQueueSize());
37 tex.update();
38 CPPUNIT_ASSERT_EQUAL((size_t)2, tex.getExecutingTaskSize());
39 CPPUNIT_ASSERT_EQUAL((size_t)1, tex.getQueueSize());
40 tasks[0]->finished_ = true;
41 tasks[2]->finished_ = true;
42 tasks[3]->finished_ = true;
43 tex.update();
44 CPPUNIT_ASSERT_EQUAL((size_t)0, tex.getExecutingTaskSize());
45 CPPUNIT_ASSERT_EQUAL((size_t)0, tex.getQueueSize());
46}
47
48} // namespace aria2

Callers

nothing calls this directly

Calls 5

arraySizeFunction · 0.85
addTaskMethod · 0.80
getExecutingTaskSizeMethod · 0.80
getQueueSizeMethod · 0.80
updateMethod · 0.45

Tested by

no test coverage detected