Quellcode durchsuchen

2009-12-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

	Fixed compile error if ENABLE_BITTORRENT is undefined.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
	* test/ProtocolDetectorTest.cc
	* test/XmlRpcMethodTest.cc
Tatsuhiro Tsujikawa vor 16 Jahren
Ursprung
Commit
9a6a73dd96

+ 12 - 0
ChangeLog

@@ -1,3 +1,15 @@
+2009-12-05  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
+
+	Fixed compile error if ENABLE_BITTORRENT is undefined.
+	* src/DefaultPieceStorage.cc
+	* src/DefaultPieceStorage.h
+	* src/PieceStorage.h
+	* src/UnknownLengthPieceStorage.cc
+	* src/UnknownLengthPieceStorage.h
+	* test/MockPieceStorage.h
+	* test/ProtocolDetectorTest.cc
+	* test/XmlRpcMethodTest.cc
+
 2009-12-05  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 
 	Documented in man page that if getifaddrs() is missing,

+ 6 - 6
src/DefaultPieceStorage.cc

@@ -196,12 +196,6 @@ bool DefaultPieceStorage::hasMissingPiece(const PeerHandle& peer)
 				      peer->getBitfieldLength());
 }
 
-bool DefaultPieceStorage::hasMissingUnusedPiece()
-{
-  size_t index;
-  return bitfieldMan->getFirstMissingUnusedIndex(index);
-}
-
 PieceHandle DefaultPieceStorage::getMissingPiece(const SharedHandle<Peer>& peer)
 {
   return getMissingPiece(peer->getBitfield(), peer->getBitfieldLength());
@@ -267,6 +261,12 @@ SharedHandle<Piece> DefaultPieceStorage::getMissingFastPiece
 
 #endif // ENABLE_BITTORRENT
 
+bool DefaultPieceStorage::hasMissingUnusedPiece()
+{
+  size_t index;
+  return bitfieldMan->getFirstMissingUnusedIndex(index);
+}
+
 PieceHandle DefaultPieceStorage::getSparseMissingUnusedPiece
 (const unsigned char* ignoreBitfield, size_t length)
 {

+ 2 - 2
src/DefaultPieceStorage.h

@@ -121,8 +121,6 @@ public:
 
   virtual bool hasMissingPiece(const SharedHandle<Peer>& peer);
 
-  virtual bool hasMissingUnusedPiece();
-
   virtual SharedHandle<Piece> getMissingPiece(const SharedHandle<Peer>& peer);
 
   virtual SharedHandle<Piece> getMissingFastPiece(const SharedHandle<Peer>& peer);
@@ -135,6 +133,8 @@ public:
 
 #endif // ENABLE_BITTORRENT
 
+  virtual bool hasMissingUnusedPiece();
+
   virtual SharedHandle<Piece> getSparseMissingUnusedPiece
   (const unsigned char* ignoreBitfield, size_t length);
 

+ 3 - 2
src/PieceStorage.h

@@ -62,8 +62,6 @@ public:
    */
   virtual bool hasMissingPiece(const SharedHandle<Peer>& peer) = 0;
 
-  virtual bool hasMissingUnusedPiece() = 0;
-
   /**
    * Returns a piece that the peer has but localhost doesn't.
    * The piece will be marked "used" status in order to prevent other command
@@ -101,6 +99,9 @@ public:
 
 #endif // ENABLE_BITTORRENT
 
+  // Returns true if there is at least one missing and unused piece.
+  virtual bool hasMissingUnusedPiece() = 0;
+
   /**
    * Returns a missing piece if available. Otherwise returns 0;
    * If ignoreBitfield is set, indexes of true bit are excluded.

+ 5 - 5
src/UnknownLengthPieceStorage.cc

@@ -78,11 +78,6 @@ bool UnknownLengthPieceStorage::hasMissingPiece(const SharedHandle<Peer>& peer)
   abort();
 }
 
-bool UnknownLengthPieceStorage::hasMissingUnusedPiece()
-{
-  abort();
-}
-
 SharedHandle<Piece> UnknownLengthPieceStorage::getMissingPiece(const SharedHandle<Peer>& peer)
 {
   abort();
@@ -107,6 +102,11 @@ SharedHandle<Piece> UnknownLengthPieceStorage::getMissingFastPiece
 
 #endif // ENABLE_BITTORRENT
 
+bool UnknownLengthPieceStorage::hasMissingUnusedPiece()
+{
+  abort();
+}
+
 SharedHandle<Piece> UnknownLengthPieceStorage::getSparseMissingUnusedPiece
 (const unsigned char* ignoreBitfield, size_t length)
 {

+ 2 - 2
src/UnknownLengthPieceStorage.h

@@ -73,8 +73,6 @@ public:
    */
   virtual bool hasMissingPiece(const SharedHandle<Peer>& peer);
 
-  virtual bool hasMissingUnusedPiece();
-
   /**
    * Returns a piece that the peer has but localhost doesn't.
    * The piece will be marked "used" status in order to prevent other command
@@ -100,6 +98,8 @@ public:
 
 #endif // ENABLE_BITTORRENT
 
+  virtual bool hasMissingUnusedPiece();
+
   /**
    * Returns a missing piece if available. Otherwise returns 0;
    */

+ 5 - 5
test/MockPieceStorage.h

@@ -44,11 +44,6 @@ public:
     return false;
   }
 
-  virtual bool hasMissingUnusedPiece()
-  {
-    return false;
-  }
-
   virtual SharedHandle<Piece> getMissingPiece(const SharedHandle<Peer>& peer) {
     return SharedHandle<Piece>(new Piece());
   }
@@ -71,6 +66,11 @@ public:
 
 #endif // ENABLE_BITTORRENT
 
+  virtual bool hasMissingUnusedPiece()
+  {
+    return false;
+  }
+
   virtual SharedHandle<Piece> getSparseMissingUnusedPiece
   (const unsigned char* ignoreBitfield, size_t length)
   {

+ 9 - 2
test/ProtocolDetectorTest.cc

@@ -1,8 +1,9 @@
 #include "ProtocolDetector.h"
+
+#include <cppunit/extensions/HelperMacros.h>
+
 #include "Exception.h"
 #include "util.h"
-#include <iostream>
-#include <cppunit/extensions/HelperMacros.h>
 
 namespace aria2 {
 
@@ -47,10 +48,16 @@ void ProtocolDetectorTest::testGuessTorrentFile()
 void ProtocolDetectorTest::testGuessTorrentMagnet()
 {
   ProtocolDetector detector;
+#ifdef ENABLE_BITTORRENT
   CPPUNIT_ASSERT
     (detector.guessTorrentMagnet
      ("magnet:?xt=urn:btih:248d0a1cd08284299de78d5c1ed359bb46717d8c"));
   CPPUNIT_ASSERT(!detector.guessTorrentMagnet("magnet:?"));
+#else // !ENABLE_BITTORRENT
+  CPPUNIT_ASSERT
+    (!detector.guessTorrentMagnet
+     ("magnet:?xt=urn:btih:248d0a1cd08284299de78d5c1ed359bb46717d8c"));
+#endif // !ENABLE_BITTORRENT
 }
 
 void ProtocolDetectorTest::testGuessMetalinkFile()

+ 18 - 0
test/XmlRpcMethodTest.cc

@@ -538,6 +538,8 @@ static void addUri(const std::string& uri,
   CPPUNIT_ASSERT_EQUAL(0, m.execute(req, e.get())._code);
 }
 
+#ifdef ENABLE_BITTORRENT
+
 static void addTorrent
 (const std::string& torrentFile, const SharedHandle<DownloadEngine>& e)
 {
@@ -547,12 +549,16 @@ static void addTorrent
   XmlRpcResponse res = m.execute(req, e.get());
 }
 
+#endif // ENABLE_BITTORRENT
+
 void XmlRpcMethodTest::testTellWaiting()
 {
   addUri("http://1/", _e);
   addUri("http://2/", _e);
   addUri("http://3/", _e);
+#ifdef ENABLE_BITTORRENT
   addTorrent("single.torrent", _e);
+#endif // ENABLE_BITTORRENT
 
   TellWaitingXmlRpcMethod m;
   XmlRpcRequest req("aria2.tellWaiting", BDE::list());
@@ -566,17 +572,29 @@ void XmlRpcMethodTest::testTellWaiting()
   // waiting.size() == offset+num 
   req = XmlRpcRequest("aria2.tellWaiting", BDE::list());
   req._params << BDE((int64_t)1);
+#ifdef ENABLE_BITTORRENT
   req._params << BDE((int64_t)3);
+#else // !ENABLE_BITTORRENT
+  req._params << BDE((int64_t)2);
+#endif // !ENABLE_BITTORRENT
   res = m.execute(req, _e.get());
   CPPUNIT_ASSERT_EQUAL(0, res._code);
+#ifdef ENABLE_BITTORRENT
   CPPUNIT_ASSERT_EQUAL((size_t)3, res._param.size());
+#else // !ENABLE_BITTORRENT
+  CPPUNIT_ASSERT_EQUAL((size_t)2, res._param.size());
+#endif // !ENABLE_BITTORRENT
   // waiting.size() < offset+num 
   req = XmlRpcRequest("aria2.tellWaiting", BDE::list());
   req._params << BDE((int64_t)1);
   req._params << BDE((int64_t)4);
   res = m.execute(req, _e.get());
   CPPUNIT_ASSERT_EQUAL(0, res._code);
+#ifdef ENABLE_BITTORRENT
   CPPUNIT_ASSERT_EQUAL((size_t)3, res._param.size());
+#else //!ENABLE_BITTORRENT
+  CPPUNIT_ASSERT_EQUAL((size_t)2, res._param.size());
+#endif // !ENABLE_BITTORRENT
 }
 
 void XmlRpcMethodTest::testTellWaiting_fail()