void Tests::getHashesFromAFileEntry2() { qDebug() << "===== getHashesFromAFileEntry2() ====="; { QFile file1("sharedDirs/big2.bin"); file1.open(QIODevice::WriteOnly); QFile file2("sharedDirs/big3.bin"); file2.open(QIODevice::WriteOnly); file1.resize(128 * 1024 * 1024); // 128Mo file2.resize(128 * 1024 * 1024); // 128Mo } QTest::qWait(2000); // Begin the computing of the big2.bin hashes. Protos::Common::Entries sharedDirs = this->fileManager->getEntries(); const string sharedDirId = sharedDirs.entry(1).shared_dir().id().hash(); Protos::Common::Entry entry; entry.set_path("/"); entry.set_name("big3.bin"); entry.mutable_shared_dir()->mutable_id()->set_hash(sharedDirId); QSharedPointer<IGetHashesResult> result = this->fileManager->getHashes(entry); HashesReceiver hashesReceiver; connect(result.data(), SIGNAL(nextHash(Common::Hash)), &hashesReceiver, SLOT(nextHash(Common::Hash))); Protos::Core::GetHashesResult res = result->start(); // Should stop the computing of 'big2.bin' and switch to 'big3.bin'. QCOMPARE(res.status(), Protos::Core::GetHashesResult_Status_OK); QTest::qWait(4000); }
void Tests::getHashesFromAFileEntry1() { qDebug() << "===== getHashesFromAFileEntry1() ====="; // Find the id of the first shared directory. Protos::Common::Entries sharedDirs = this->fileManager->getEntries(); const string sharedDirId = sharedDirs.entry(1).shared_dir().id().hash(); Protos::Common::Entry entry; entry.set_path("/share1/"); entry.set_name("r.txt"); entry.mutable_shared_dir()->mutable_id()->set_hash(sharedDirId); QSharedPointer<IGetHashesResult> result = this->fileManager->getHashes(entry); HashesReceiver hashesReceiver; connect(result.data(), SIGNAL(nextHash(Common::Hash)), &hashesReceiver, SLOT(nextHash(Common::Hash))); Protos::Core::GetHashesResult res = result->start(); QCOMPARE(res.status(), Protos::Core::GetHashesResult_Status_OK); QVERIFY(hashesReceiver.waitToReceive(QList<Common::Hash>() << Common::Hash::fromStr("97d464813598e2e4299b5fe7db29aefffdf2641d"), 500)); }