mirror of https://github.com/aria2/aria2
2007-04-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/PeerAbstractCommand.cc (onAbort): Call PeerStorage::returnPeer() * src/DefaultPeerStorage.h, src/DefaultPeerStorage.cc (incomingPeers): New variable. (addIncomingPeer): New function. (returnPeer): New function. (onErasingPeer): New function. (addPeer): push_back -> push_front (getActivePeers): Rewritten. (calculateStat): Rewritten. * src/PeerStorage.h (TransferStat::copy): New function. (TransferStat::TransferStat): New function. (TransferStat::operator=): New function. (addIncomingPeer): New function. (returnPeer): New function. * src/PeerListenCommand.cc (execute): Use PeerStorage::addIncomingPeer() instead of Peer::addPeer().pull/1/head
parent
f030408d8e
commit
dd37b7be0a
22
ChangeLog
22
ChangeLog
|
@ -1,3 +1,25 @@
|
||||||
|
2007-04-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
|
||||||
|
|
||||||
|
* src/PeerAbstractCommand.cc
|
||||||
|
(onAbort): Call PeerStorage::returnPeer()
|
||||||
|
* src/DefaultPeerStorage.h, src/DefaultPeerStorage.cc
|
||||||
|
(incomingPeers): New variable.
|
||||||
|
(addIncomingPeer): New function.
|
||||||
|
(returnPeer): New function.
|
||||||
|
(onErasingPeer): New function.
|
||||||
|
(addPeer): push_back -> push_front
|
||||||
|
(getActivePeers): Rewritten.
|
||||||
|
(calculateStat): Rewritten.
|
||||||
|
* src/PeerStorage.h
|
||||||
|
(TransferStat::copy): New function.
|
||||||
|
(TransferStat::TransferStat): New function.
|
||||||
|
(TransferStat::operator=): New function.
|
||||||
|
(addIncomingPeer): New function.
|
||||||
|
(returnPeer): New function.
|
||||||
|
* src/PeerListenCommand.cc
|
||||||
|
(execute): Use PeerStorage::addIncomingPeer() instead of
|
||||||
|
Peer::addPeer().
|
||||||
|
|
||||||
2007-04-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
|
2007-04-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
|
||||||
|
|
||||||
Connect to a peer actively when download speed is lower than specified
|
Connect to a peer actively when download speed is lower than specified
|
||||||
|
|
|
@ -39,7 +39,7 @@ bool ActivePeerConnectionCommand::execute() {
|
||||||
if(btRuntime->isHalt()) {
|
if(btRuntime->isHalt()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if(checkPoint.elapsed(interval)) {
|
if(!pieceStorage->downloadFinished() && checkPoint.elapsed(interval)) {
|
||||||
checkPoint.reset();
|
checkPoint.reset();
|
||||||
|
|
||||||
TransferStat tstat = peerStorage->calculateStat();
|
TransferStat tstat = peerStorage->calculateStat();
|
||||||
|
|
|
@ -56,7 +56,7 @@ bool DefaultPeerStorage::addPeer(const PeerHandle& peer) {
|
||||||
if(peers.size() >= (size_t)maxPeerListSize) {
|
if(peers.size() >= (size_t)maxPeerListSize) {
|
||||||
deleteUnusedPeer(peers.size()-maxPeerListSize+1);
|
deleteUnusedPeer(peers.size()-maxPeerListSize+1);
|
||||||
}
|
}
|
||||||
peers.push_back(peer);
|
peers.push_front(peer);
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
const PeerHandle& peer = *itr;
|
const PeerHandle& peer = *itr;
|
||||||
|
@ -69,6 +69,12 @@ bool DefaultPeerStorage::addPeer(const PeerHandle& peer) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool DefaultPeerStorage::addIncomingPeer(const PeerHandle& peer)
|
||||||
|
{
|
||||||
|
incomingPeers.push_back(peer);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
void DefaultPeerStorage::addPeer(const Peers& peers) {
|
void DefaultPeerStorage::addPeer(const Peers& peers) {
|
||||||
for(Peers::const_iterator itr = peers.begin();
|
for(Peers::const_iterator itr = peers.begin();
|
||||||
itr != peers.end(); itr++) {
|
itr != peers.end(); itr++) {
|
||||||
|
@ -124,7 +130,7 @@ PeerHandle DefaultPeerStorage::getPeer(const string& ipaddr,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int DefaultPeerStorage::countPeer() const {
|
int32_t DefaultPeerStorage::countPeer() const {
|
||||||
return peers.size();
|
return peers.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,45 +138,94 @@ bool DefaultPeerStorage::isPeerAvailable() {
|
||||||
return !getUnusedPeer().isNull();
|
return !getUnusedPeer().isNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
Peers DefaultPeerStorage::getActivePeers() {
|
class CollectActivePeer {
|
||||||
Peers activePeers;
|
private:
|
||||||
for(Peers::iterator itr = peers.begin(); itr != peers.end(); itr++) {
|
Peers _activePeers;
|
||||||
PeerHandle& peer = *itr;
|
public:
|
||||||
|
void operator()(const PeerHandle& peer)
|
||||||
|
{
|
||||||
if(peer->isActive()) {
|
if(peer->isActive()) {
|
||||||
activePeers.push_back(peer);
|
_activePeers.push_back(peer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return activePeers;
|
|
||||||
|
const Peers& getActivePeers() { return _activePeers; }
|
||||||
|
};
|
||||||
|
|
||||||
|
Peers DefaultPeerStorage::getActivePeers() {
|
||||||
|
CollectActivePeer funcObj;
|
||||||
|
funcObj = for_each(peers.begin(), peers.end(), funcObj);
|
||||||
|
funcObj = for_each(incomingPeers.begin(), incomingPeers.end(), funcObj);
|
||||||
|
return funcObj.getActivePeers();
|
||||||
}
|
}
|
||||||
|
|
||||||
TransferStat DefaultPeerStorage::calculateStat() {
|
class CalculateStat {
|
||||||
TransferStat stat;
|
private:
|
||||||
for(Peers::iterator itr = peers.begin(); itr != peers.end(); itr++) {
|
TransferStat _stat;
|
||||||
PeerHandle& peer = *itr;
|
public:
|
||||||
|
void operator()(const PeerHandle& peer)
|
||||||
|
{
|
||||||
if(peer->isActive()) {
|
if(peer->isActive()) {
|
||||||
stat.downloadSpeed += peer->calculateDownloadSpeed();
|
_stat.downloadSpeed += peer->calculateDownloadSpeed();
|
||||||
stat.uploadSpeed += peer->calculateUploadSpeed();
|
_stat.uploadSpeed += peer->calculateUploadSpeed();
|
||||||
}
|
}
|
||||||
stat.sessionDownloadLength += peer->getSessionDownloadLength();
|
_stat.sessionDownloadLength += peer->getSessionDownloadLength();
|
||||||
stat.sessionUploadLength += peer->getSessionUploadLength();
|
_stat.sessionUploadLength += peer->getSessionUploadLength();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const TransferStat& getTransferStat() { return _stat; }
|
||||||
|
};
|
||||||
|
|
||||||
|
TransferStat DefaultPeerStorage::calculateStat() {
|
||||||
|
CalculateStat calStat;
|
||||||
|
calStat = for_each(peers.begin(), peers.end(), calStat);
|
||||||
|
calStat = for_each(incomingPeers.begin(), incomingPeers.end(), calStat);
|
||||||
|
|
||||||
|
TransferStat stat = calStat.getTransferStat();
|
||||||
stat.sessionDownloadLength += removedPeerSessionDownloadLength;
|
stat.sessionDownloadLength += removedPeerSessionDownloadLength;
|
||||||
stat.sessionUploadLength += removedPeerSessionUploadLength;
|
stat.sessionUploadLength += removedPeerSessionUploadLength;
|
||||||
return stat;
|
return stat;
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultPeerStorage::deleteUnusedPeer(int delSize) {
|
void DefaultPeerStorage::deleteUnusedPeer(int delSize) {
|
||||||
for(Peers::iterator itr = peers.begin();
|
Peers temp;
|
||||||
itr != peers.end() && delSize > 0;) {
|
for(Peers::reverse_iterator itr = peers.rbegin();
|
||||||
|
itr != peers.rend(); ++itr) {
|
||||||
const PeerHandle& p = *itr;
|
const PeerHandle& p = *itr;
|
||||||
if(p->cuid == 0) {
|
if(p->cuid == 0 && delSize > 0) {
|
||||||
// Update removedPeerSession******Length
|
// Update removedPeerSession******Length
|
||||||
removedPeerSessionDownloadLength += p->getSessionDownloadLength();
|
onErasingPeer(p);
|
||||||
removedPeerSessionUploadLength += p->getSessionUploadLength();
|
|
||||||
itr = peers.erase(itr);
|
|
||||||
delSize--;
|
delSize--;
|
||||||
} else {
|
} else {
|
||||||
itr++;
|
temp.push_front(p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
peers = temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
void DefaultPeerStorage::onErasingPeer(const PeerHandle& peer)
|
||||||
|
{
|
||||||
|
removedPeerSessionDownloadLength += peer->getSessionDownloadLength();
|
||||||
|
removedPeerSessionUploadLength += peer->getSessionUploadLength();
|
||||||
|
}
|
||||||
|
|
||||||
|
void DefaultPeerStorage::returnPeer(const PeerHandle& peer)
|
||||||
|
{
|
||||||
|
Peers::iterator itr = find(peers.begin(), peers.end(), peer);
|
||||||
|
if(itr == peers.end()) {
|
||||||
|
itr = find(incomingPeers.begin(), incomingPeers.end(), peer);
|
||||||
|
if(itr == peers.end()) {
|
||||||
|
// do nothing
|
||||||
|
} else {
|
||||||
|
// erase incoming peer because we cannot connect to it with port number
|
||||||
|
// (*itr)->port. It is not the listening port.
|
||||||
|
onErasingPeer(*itr);
|
||||||
|
incomingPeers.erase(itr);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
peer->startBadCondition();
|
||||||
|
peer->resetStatus();
|
||||||
|
peers.erase(itr);
|
||||||
|
peers.push_back(peer);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,7 @@ private:
|
||||||
BtContextHandle btContext;
|
BtContextHandle btContext;
|
||||||
const Option* option;
|
const Option* option;
|
||||||
Peers peers;
|
Peers peers;
|
||||||
|
Peers incomingPeers;
|
||||||
int maxPeerListSize;
|
int maxPeerListSize;
|
||||||
Logger* logger;
|
Logger* logger;
|
||||||
BtRuntimeHandle btRuntime;
|
BtRuntimeHandle btRuntime;
|
||||||
|
@ -65,7 +66,9 @@ public:
|
||||||
|
|
||||||
virtual bool addPeer(const PeerHandle& peer);
|
virtual bool addPeer(const PeerHandle& peer);
|
||||||
|
|
||||||
int countPeer() const;
|
virtual bool addIncomingPeer(const PeerHandle& peer);
|
||||||
|
|
||||||
|
int32_t countPeer() const;
|
||||||
|
|
||||||
virtual PeerHandle getUnusedPeer();
|
virtual PeerHandle getUnusedPeer();
|
||||||
|
|
||||||
|
@ -81,11 +84,17 @@ public:
|
||||||
|
|
||||||
virtual TransferStat calculateStat();
|
virtual TransferStat calculateStat();
|
||||||
|
|
||||||
|
virtual void returnPeer(const PeerHandle& peer);
|
||||||
|
|
||||||
void setMaxPeerListSize(int size) { this->maxPeerListSize = size; }
|
void setMaxPeerListSize(int size) { this->maxPeerListSize = size; }
|
||||||
|
|
||||||
int getMaxPeerListSize() const { return maxPeerListSize; }
|
int getMaxPeerListSize() const { return maxPeerListSize; }
|
||||||
|
|
||||||
void deleteUnusedPeer(int delSize);
|
void deleteUnusedPeer(int delSize);
|
||||||
|
|
||||||
|
void onErasingPeer(const PeerHandle& peer);
|
||||||
|
|
||||||
|
const Peers& getIncomingPeers() const { return incomingPeers; }
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _D_DEFAULT_PEER_STORAGE_H_
|
#endif // _D_DEFAULT_PEER_STORAGE_H_
|
||||||
|
|
|
@ -97,8 +97,7 @@ bool PeerAbstractCommand::prepareForRetry(int wait) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void PeerAbstractCommand::onAbort(RecoverableException* ex) {
|
void PeerAbstractCommand::onAbort(RecoverableException* ex) {
|
||||||
peer->startBadCondition();
|
peerStorage->returnPeer(peer);
|
||||||
peer->resetStatus();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void PeerAbstractCommand::disableReadCheckSocket() {
|
void PeerAbstractCommand::disableReadCheckSocket() {
|
||||||
|
|
|
@ -80,7 +80,7 @@ bool PeerListenCommand::execute() {
|
||||||
PeerHandle peer = PeerHandle(new Peer(peerInfo.first, peerInfo.second,
|
PeerHandle peer = PeerHandle(new Peer(peerInfo.first, peerInfo.second,
|
||||||
btContext->getPieceLength(),
|
btContext->getPieceLength(),
|
||||||
btContext->getTotalLength()));
|
btContext->getTotalLength()));
|
||||||
if(peerStorage->addPeer(peer)) {
|
if(peerStorage->addIncomingPeer(peer)) {
|
||||||
int newCuid = btRuntime->getNewCuid();
|
int newCuid = btRuntime->getNewCuid();
|
||||||
peer->cuid = newCuid;
|
peer->cuid = newCuid;
|
||||||
PeerInteractionCommand* command =
|
PeerInteractionCommand* command =
|
||||||
|
|
|
@ -44,10 +44,31 @@ public:
|
||||||
int32_t uploadSpeed;
|
int32_t uploadSpeed;
|
||||||
int64_t sessionDownloadLength;
|
int64_t sessionDownloadLength;
|
||||||
int64_t sessionUploadLength;
|
int64_t sessionUploadLength;
|
||||||
|
|
||||||
|
void copy(const TransferStat& stat)
|
||||||
|
{
|
||||||
|
downloadSpeed = stat.downloadSpeed;
|
||||||
|
uploadSpeed = stat.uploadSpeed;
|
||||||
|
sessionDownloadLength = stat.sessionDownloadLength;
|
||||||
|
sessionUploadLength = stat.sessionUploadLength;
|
||||||
|
}
|
||||||
public:
|
public:
|
||||||
TransferStat():downloadSpeed(0), uploadSpeed(0),
|
TransferStat():downloadSpeed(0), uploadSpeed(0),
|
||||||
sessionDownloadLength(0), sessionUploadLength(0) {}
|
sessionDownloadLength(0), sessionUploadLength(0) {}
|
||||||
|
|
||||||
|
TransferStat(const TransferStat& stat)
|
||||||
|
{
|
||||||
|
copy(stat);
|
||||||
|
}
|
||||||
|
|
||||||
|
TransferStat& operator=(const TransferStat& stat)
|
||||||
|
{
|
||||||
|
if(this != &stat) {
|
||||||
|
copy(stat);
|
||||||
|
}
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t getDownloadSpeed() const {
|
int32_t getDownloadSpeed() const {
|
||||||
return downloadSpeed;
|
return downloadSpeed;
|
||||||
}
|
}
|
||||||
|
@ -86,11 +107,17 @@ public:
|
||||||
virtual ~PeerStorage() {}
|
virtual ~PeerStorage() {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds new peer to internal peer list.
|
* Adds new peer to the internal peer list.
|
||||||
* If the peer is added successfully, returns true. Otherwise returns false.
|
* If the peer is added successfully, returns true. Otherwise returns false.
|
||||||
*/
|
*/
|
||||||
virtual bool addPeer(const PeerHandle& peer) = 0;
|
virtual bool addPeer(const PeerHandle& peer) = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds new incoming peer to the internal peer list.
|
||||||
|
* If the peer is added successfully, returns true. Otherwise returns false.
|
||||||
|
*/
|
||||||
|
virtual bool addIncomingPeer(const PeerHandle& peer) = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds all peers in peers to internal peer list.
|
* Adds all peers in peers to internal peer list.
|
||||||
*/
|
*/
|
||||||
|
@ -121,6 +148,11 @@ public:
|
||||||
* Calculates current download/upload statistics.
|
* Calculates current download/upload statistics.
|
||||||
*/
|
*/
|
||||||
virtual TransferStat calculateStat() = 0;
|
virtual TransferStat calculateStat() = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tells PeerStorage object that peer is no longer used in the session.
|
||||||
|
*/
|
||||||
|
virtual void returnPeer(const PeerHandle& peer) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef SharedHandle<PeerStorage> PeerStorageHandle;
|
typedef SharedHandle<PeerStorage> PeerStorageHandle;
|
||||||
|
|
|
@ -16,6 +16,9 @@ class DefaultPeerStorageTest:public CppUnit::TestFixture {
|
||||||
CPPUNIT_TEST(testIsPeerAvailable);
|
CPPUNIT_TEST(testIsPeerAvailable);
|
||||||
CPPUNIT_TEST(testActivatePeer);
|
CPPUNIT_TEST(testActivatePeer);
|
||||||
CPPUNIT_TEST(testCalculateStat);
|
CPPUNIT_TEST(testCalculateStat);
|
||||||
|
CPPUNIT_TEST(testAddIncomingPeer);
|
||||||
|
CPPUNIT_TEST(testReturnPeer);
|
||||||
|
CPPUNIT_TEST(testOnErasingPeer);
|
||||||
CPPUNIT_TEST_SUITE_END();
|
CPPUNIT_TEST_SUITE_END();
|
||||||
private:
|
private:
|
||||||
BtContextHandle btContext;
|
BtContextHandle btContext;
|
||||||
|
@ -38,6 +41,9 @@ public:
|
||||||
void testIsPeerAvailable();
|
void testIsPeerAvailable();
|
||||||
void testActivatePeer();
|
void testActivatePeer();
|
||||||
void testCalculateStat();
|
void testCalculateStat();
|
||||||
|
void testAddIncomingPeer();
|
||||||
|
void testReturnPeer();
|
||||||
|
void testOnErasingPeer();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -118,13 +124,25 @@ void DefaultPeerStorageTest::testAddPeer() {
|
||||||
btContext->getTotalLength()));
|
btContext->getTotalLength()));
|
||||||
|
|
||||||
CPPUNIT_ASSERT(ps.addPeer(peer4));
|
CPPUNIT_ASSERT(ps.addPeer(peer4));
|
||||||
// peer3 was deleted.
|
// peer1 was deleted.
|
||||||
CPPUNIT_ASSERT_EQUAL(3, ps.countPeer());
|
CPPUNIT_ASSERT_EQUAL(3, ps.countPeer());
|
||||||
|
|
||||||
peer4->startBadCondition();
|
peer4->startBadCondition();
|
||||||
|
|
||||||
|
PeerHandle peer5(new Peer("192.168.0.4", 6889, btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength()));
|
||||||
|
|
||||||
// this returns false, because peer4 in the container has error.
|
// this returns false, because peer4 in the container has error.
|
||||||
CPPUNIT_ASSERT_EQUAL(false, ps.addPeer(peer4));
|
CPPUNIT_ASSERT_EQUAL(false, ps.addPeer(peer5));
|
||||||
|
|
||||||
|
peer3->cuid = 1;
|
||||||
|
|
||||||
|
PeerHandle peer6(new Peer("192.168.0.3", 6889, btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength()));
|
||||||
|
|
||||||
|
// this is false, because peer3's cuid is not zero
|
||||||
|
CPPUNIT_ASSERT_EQUAL(false, ps.addPeer(peer6));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void DefaultPeerStorageTest::testGetPeer() {
|
void DefaultPeerStorageTest::testGetPeer() {
|
||||||
|
@ -194,3 +212,47 @@ void DefaultPeerStorageTest::testActivatePeer() {
|
||||||
|
|
||||||
void DefaultPeerStorageTest::testCalculateStat() {
|
void DefaultPeerStorageTest::testCalculateStat() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DefaultPeerStorageTest::testAddIncomingPeer()
|
||||||
|
{
|
||||||
|
DefaultPeerStorage ps(btContext, option);
|
||||||
|
|
||||||
|
CPPUNIT_ASSERT(ps.addIncomingPeer(new Peer("192.168.0.1", 6889,
|
||||||
|
btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength())));
|
||||||
|
|
||||||
|
CPPUNIT_ASSERT_EQUAL((size_t)1, ps.getIncomingPeers().size());
|
||||||
|
}
|
||||||
|
|
||||||
|
void DefaultPeerStorageTest::testReturnPeer()
|
||||||
|
{
|
||||||
|
DefaultPeerStorage ps(btContext, option);
|
||||||
|
|
||||||
|
PeerHandle peer1(new Peer("192.168.0.1", 6889, btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength()));
|
||||||
|
PeerHandle peer2(new Peer("192.168.0.2", 6889, btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength()));
|
||||||
|
ps.addPeer(peer1);
|
||||||
|
ps.addPeer(peer2);
|
||||||
|
|
||||||
|
PeerHandle peer3(new Peer("192.168.0.3", 6889, btContext->getPieceLength(),
|
||||||
|
btContext->getTotalLength()));
|
||||||
|
|
||||||
|
ps.addIncomingPeer(peer3);
|
||||||
|
|
||||||
|
CPPUNIT_ASSERT_EQUAL(string("192.168.0.2"),
|
||||||
|
ps.getPeers().front()->ipaddr);
|
||||||
|
ps.returnPeer(peer2);
|
||||||
|
CPPUNIT_ASSERT_EQUAL(string("192.168.0.1"),
|
||||||
|
ps.getPeers().front()->ipaddr);
|
||||||
|
|
||||||
|
ps.returnPeer(peer3);
|
||||||
|
CPPUNIT_ASSERT_EQUAL((size_t)0, ps.getIncomingPeers().size());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void DefaultPeerStorageTest::testOnErasingPeer()
|
||||||
|
{
|
||||||
|
// test this
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
TESTS = aria2c
|
TESTS = aria2c
|
||||||
check_PROGRAMS = $(TESTS)
|
check_PROGRAMS = $(TESTS)
|
||||||
aria2c_SOURCES = AllTest.cc\
|
aria2c_SOURCES = AllTest.cc\
|
||||||
|
PeerTest.cc\
|
||||||
|
DefaultPeerStorageTest.cc\
|
||||||
RequestFactoryTest.cc\
|
RequestFactoryTest.cc\
|
||||||
NetrcAuthResolverTest.cc\
|
NetrcAuthResolverTest.cc\
|
||||||
DefaultAuthResolverTest.cc\
|
DefaultAuthResolverTest.cc\
|
||||||
|
@ -41,13 +43,11 @@ aria2c_SOURCES = AllTest.cc\
|
||||||
TrackerWatcherCommandTest.cc\
|
TrackerWatcherCommandTest.cc\
|
||||||
DefaultBtContextTest.cc\
|
DefaultBtContextTest.cc\
|
||||||
DefaultPieceStorageTest.cc\
|
DefaultPieceStorageTest.cc\
|
||||||
DefaultPeerStorageTest.cc\
|
|
||||||
DefaultBtAnnounceTest.cc\
|
DefaultBtAnnounceTest.cc\
|
||||||
BtRegistryTest.cc\
|
BtRegistryTest.cc\
|
||||||
DefaultBtMessageDispatcherTest.cc\
|
DefaultBtMessageDispatcherTest.cc\
|
||||||
MockPeerStorage.h\
|
MockPeerStorage.h\
|
||||||
DefaultBtRequestFactoryTest.cc\
|
DefaultBtRequestFactoryTest.cc\
|
||||||
PeerTest.cc\
|
|
||||||
BtAllowedFastMessageTest.cc\
|
BtAllowedFastMessageTest.cc\
|
||||||
BtBitfieldMessageTest.cc\
|
BtBitfieldMessageTest.cc\
|
||||||
BtCancelMessageTest.cc\
|
BtCancelMessageTest.cc\
|
||||||
|
|
|
@ -57,7 +57,8 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
CONFIG_HEADER = $(top_builddir)/config.h
|
CONFIG_HEADER = $(top_builddir)/config.h
|
||||||
CONFIG_CLEAN_FILES =
|
CONFIG_CLEAN_FILES =
|
||||||
am__EXEEXT_1 = aria2c$(EXEEXT)
|
am__EXEEXT_1 = aria2c$(EXEEXT)
|
||||||
am_aria2c_OBJECTS = AllTest.$(OBJEXT) RequestFactoryTest.$(OBJEXT) \
|
am_aria2c_OBJECTS = AllTest.$(OBJEXT) PeerTest.$(OBJEXT) \
|
||||||
|
DefaultPeerStorageTest.$(OBJEXT) RequestFactoryTest.$(OBJEXT) \
|
||||||
NetrcAuthResolverTest.$(OBJEXT) \
|
NetrcAuthResolverTest.$(OBJEXT) \
|
||||||
DefaultAuthResolverTest.$(OBJEXT) RequestTest.$(OBJEXT) \
|
DefaultAuthResolverTest.$(OBJEXT) RequestTest.$(OBJEXT) \
|
||||||
HttpRequestTest.$(OBJEXT) UtilTest.$(OBJEXT) \
|
HttpRequestTest.$(OBJEXT) UtilTest.$(OBJEXT) \
|
||||||
|
@ -80,10 +81,9 @@ am_aria2c_OBJECTS = AllTest.$(OBJEXT) RequestFactoryTest.$(OBJEXT) \
|
||||||
AnnounceListTest.$(OBJEXT) TrackerWatcherCommandTest.$(OBJEXT) \
|
AnnounceListTest.$(OBJEXT) TrackerWatcherCommandTest.$(OBJEXT) \
|
||||||
DefaultBtContextTest.$(OBJEXT) \
|
DefaultBtContextTest.$(OBJEXT) \
|
||||||
DefaultPieceStorageTest.$(OBJEXT) \
|
DefaultPieceStorageTest.$(OBJEXT) \
|
||||||
DefaultPeerStorageTest.$(OBJEXT) \
|
|
||||||
DefaultBtAnnounceTest.$(OBJEXT) BtRegistryTest.$(OBJEXT) \
|
DefaultBtAnnounceTest.$(OBJEXT) BtRegistryTest.$(OBJEXT) \
|
||||||
DefaultBtMessageDispatcherTest.$(OBJEXT) \
|
DefaultBtMessageDispatcherTest.$(OBJEXT) \
|
||||||
DefaultBtRequestFactoryTest.$(OBJEXT) PeerTest.$(OBJEXT) \
|
DefaultBtRequestFactoryTest.$(OBJEXT) \
|
||||||
BtAllowedFastMessageTest.$(OBJEXT) \
|
BtAllowedFastMessageTest.$(OBJEXT) \
|
||||||
BtBitfieldMessageTest.$(OBJEXT) BtCancelMessageTest.$(OBJEXT) \
|
BtBitfieldMessageTest.$(OBJEXT) BtCancelMessageTest.$(OBJEXT) \
|
||||||
BtChokeMessageTest.$(OBJEXT) BtHaveAllMessageTest.$(OBJEXT) \
|
BtChokeMessageTest.$(OBJEXT) BtHaveAllMessageTest.$(OBJEXT) \
|
||||||
|
@ -262,6 +262,8 @@ sysconfdir = @sysconfdir@
|
||||||
target_alias = @target_alias@
|
target_alias = @target_alias@
|
||||||
TESTS = aria2c
|
TESTS = aria2c
|
||||||
aria2c_SOURCES = AllTest.cc\
|
aria2c_SOURCES = AllTest.cc\
|
||||||
|
PeerTest.cc\
|
||||||
|
DefaultPeerStorageTest.cc\
|
||||||
RequestFactoryTest.cc\
|
RequestFactoryTest.cc\
|
||||||
NetrcAuthResolverTest.cc\
|
NetrcAuthResolverTest.cc\
|
||||||
DefaultAuthResolverTest.cc\
|
DefaultAuthResolverTest.cc\
|
||||||
|
@ -302,13 +304,11 @@ aria2c_SOURCES = AllTest.cc\
|
||||||
TrackerWatcherCommandTest.cc\
|
TrackerWatcherCommandTest.cc\
|
||||||
DefaultBtContextTest.cc\
|
DefaultBtContextTest.cc\
|
||||||
DefaultPieceStorageTest.cc\
|
DefaultPieceStorageTest.cc\
|
||||||
DefaultPeerStorageTest.cc\
|
|
||||||
DefaultBtAnnounceTest.cc\
|
DefaultBtAnnounceTest.cc\
|
||||||
BtRegistryTest.cc\
|
BtRegistryTest.cc\
|
||||||
DefaultBtMessageDispatcherTest.cc\
|
DefaultBtMessageDispatcherTest.cc\
|
||||||
MockPeerStorage.h\
|
MockPeerStorage.h\
|
||||||
DefaultBtRequestFactoryTest.cc\
|
DefaultBtRequestFactoryTest.cc\
|
||||||
PeerTest.cc\
|
|
||||||
BtAllowedFastMessageTest.cc\
|
BtAllowedFastMessageTest.cc\
|
||||||
BtBitfieldMessageTest.cc\
|
BtBitfieldMessageTest.cc\
|
||||||
BtCancelMessageTest.cc\
|
BtCancelMessageTest.cc\
|
||||||
|
|
Loading…
Reference in New Issue