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

Method testGetBencodedMessage

test/DHTPingMessageTest.cc:54–75  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

52CPPUNIT_TEST_SUITE_REGISTRATION(DHTPingMessageTest);
53
54void DHTPingMessageTest::testGetBencodedMessage()
55{
56 unsigned char tid[DHT_TRANSACTION_ID_LENGTH];
57 util::generateRandomData(tid, DHT_TRANSACTION_ID_LENGTH);
58 std::string transactionID(&tid[0], &tid[DHT_TRANSACTION_ID_LENGTH]);
59
60 DHTPingMessage msg(localNode_, remoteNode_, transactionID);
61 msg.setVersion("A200");
62
63 std::string msgbody = msg.getBencodedMessage();
64
65 Dict dict;
66 dict.put("t", transactionID);
67 dict.put("v", "A200");
68 dict.put("y", "q");
69 dict.put("q", "ping");
70 auto aDict = Dict::g();
71 aDict->put("id", String::g(localNode_->getID(), DHT_ID_LENGTH));
72 dict.put("a", std::move(aDict));
73
74 CPPUNIT_ASSERT_EQUAL(bencode2::encode(&dict), msgbody);
75}
76
77void DHTPingMessageTest::testDoReceivedAction()
78{

Callers

nothing calls this directly

Calls 6

generateRandomDataFunction · 0.85
getBencodedMessageMethod · 0.80
getIDMethod · 0.80
encodeFunction · 0.50
setVersionMethod · 0.45
putMethod · 0.45

Tested by

no test coverage detected