summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2007-03-21 10:19:23 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2007-03-21 10:19:23 +0000
commit5649cf6cda777cff7749b12f5286272959520a4f (patch)
tree3cd22d16b00c091e72b2d55a9095041e9797d003 /test
parent0f514b0db108a3dd2a6e0744c717042e6884a7fb (diff)
2007-03-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/Request.h: Use AuthResolver to get authentication information. * src/main.cc: Made RequestFactory a singleton object. Netrc is now set to RequestFactory object. * src/AuthConfigItem.h, src/AuthConfigItem.cc: Removed. * src/AuthConfig.h, src/AuthConfig.cc: Rewritten. * src/TrackerWatcherComand.cc: Use RequestFactorySingletonHolder to create Request object.
Diffstat (limited to 'test')
-rw-r--r--test/AuthConfigTest.cc43
-rw-r--r--test/HttpRequestTest.cc86
-rw-r--r--test/Makefile.am5
-rw-r--r--test/Makefile.in17
-rw-r--r--test/RequestTest.cc146
-rw-r--r--test/TrackerWatcherCommandTest.cc14
6 files changed, 102 insertions, 209 deletions
diff --git a/test/AuthConfigTest.cc b/test/AuthConfigTest.cc
deleted file mode 100644
index c80ba7fe..00000000
--- a/test/AuthConfigTest.cc
+++ /dev/null
@@ -1,43 +0,0 @@
-#include "AuthConfig.h"
-#include "Option.h"
-#include "prefs.h"
-#include <cppunit/extensions/HelperMacros.h>
-
-class AuthConfigTest:public CppUnit::TestFixture {
-
- CPPUNIT_TEST_SUITE(AuthConfigTest);
- CPPUNIT_TEST(testGet);
- CPPUNIT_TEST_SUITE_END();
-
-public:
- void testGet();
-};
-
-
-CPPUNIT_TEST_SUITE_REGISTRATION( AuthConfigTest );
-
-void AuthConfigTest::testGet()
-{
- Option option;
- option.put(PREF_HTTP_USER, "httpUser");
- option.put(PREF_HTTP_PASSWD, "httpPassword");
- option.put(PREF_FTP_USER, "ftpUser");
- option.put(PREF_FTP_PASSWD, "ftpPassword");
- option.put(PREF_HTTP_PROXY_USER, "httpProxyUser");
- option.put(PREF_HTTP_PROXY_PASSWD, "httpProxyPassword");
-
- AuthConfig authConfig;
- authConfig.configure(&option);
-
- AuthConfigItemHandle httpAuth = authConfig.getHttpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("httpUser"), httpAuth->getUser());
- CPPUNIT_ASSERT_EQUAL(string("httpPassword"), httpAuth->getPassword());
-
- AuthConfigItemHandle ftpAuth = authConfig.getFtpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("ftpUser"), ftpAuth->getUser());
- CPPUNIT_ASSERT_EQUAL(string("ftpPassword"), ftpAuth->getPassword());
-
- AuthConfigItemHandle httpProxyAuth = authConfig.getHttpProxyAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("httpProxyUser"), httpProxyAuth->getUser());
- CPPUNIT_ASSERT_EQUAL(string("httpProxyPassword"), httpProxyAuth->getPassword());
-}
diff --git a/test/HttpRequestTest.cc b/test/HttpRequestTest.cc
index 671d1628..54ff16a3 100644
--- a/test/HttpRequestTest.cc
+++ b/test/HttpRequestTest.cc
@@ -1,5 +1,6 @@
#include "HttpRequest.h"
#include "prefs.h"
+#include "RequestFactory.h"
#include <cppunit/extensions/HelperMacros.h>
using namespace std;
@@ -18,8 +19,7 @@ class HttpRequestTest : public CppUnit::TestFixture {
private:
public:
- void setUp() {
- }
+ void setUp() {}
void testGetStartByte();
void testGetEndByte();
@@ -79,10 +79,21 @@ void HttpRequestTest::testGetEndByte()
void HttpRequestTest::testCreateRequest()
{
- RequestHandle request = new Request();
+ SharedHandle<Option> option = new Option();
+ option->put(PREF_HTTP_AUTH_ENABLED, V_FALSE);
+ option->put(PREF_HTTP_PROXY_ENABLED, V_FALSE);
+ option->put(PREF_HTTP_PROXY_METHOD, V_TUNNEL);
+ option->put(PREF_HTTP_PROXY_AUTH_ENABLED, V_FALSE);
+ option->put(PREF_HTTP_USER, "aria2user");
+ option->put(PREF_HTTP_PASSWD, "aria2passwd");
+ option->put(PREF_HTTP_PROXY_USER, "aria2proxyuser");
+ option->put(PREF_HTTP_PROXY_PASSWD, "aria2proxypasswd");
+ RequestFactory requestFactory;
+ requestFactory.setOption(option.get());
+
+ RequestHandle request = requestFactory.createRequest();
+
request->setUrl("http://localhost:8080/archives/aria2-1.0.0.tar.bz2");
- AuthConfigHandle authConfig = new AuthConfig();
- request->setUserDefinedAuthConfig(authConfig);
SegmentHandle segment = new Segment();
@@ -161,44 +172,7 @@ void HttpRequestTest::testCreateRequest()
request->resetUrl();
- SharedHandle<Option> option = new Option();
- option->put(PREF_HTTP_AUTH_ENABLED, V_FALSE);
- option->put(PREF_HTTP_PROXY_ENABLED, V_FALSE);
- option->put(PREF_HTTP_PROXY_METHOD, V_TUNNEL);
- option->put(PREF_HTTP_PROXY_AUTH_ENABLED, V_FALSE);
- option->put(PREF_HTTP_USER, "aria2user");
- option->put(PREF_HTTP_PASSWD, "aria2passwd");
- option->put(PREF_HTTP_PROXY_USER, "aria2proxyuser");
- option->put(PREF_HTTP_PROXY_PASSWD, "aria2proxypasswd");
-
- authConfig->configure(option.get());
- httpRequest.configure(option.get());
-
- expectedText = "GET /archives/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
- "User-Agent: aria2\r\n"
- "Accept: */*\r\n"
- "Host: localhost:8080\r\n"
- "Pragma: no-cache\r\n"
- "Cache-Control: no-cache\r\n"
- "\r\n";
-
- CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
-
- option->put(PREF_HTTP_AUTH_ENABLED, V_TRUE);
-
- httpRequest.configure(option.get());
-
- expectedText = "GET /archives/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
- "User-Agent: aria2\r\n"
- "Accept: */*\r\n"
- "Host: localhost:8080\r\n"
- "Pragma: no-cache\r\n"
- "Cache-Control: no-cache\r\n"
- "Authorization: Basic YXJpYTJ1c2VyOmFyaWEycGFzc3dk\r\n"
- "\r\n";
-
- CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
-
+ // enable http auth
option->put(PREF_HTTP_AUTH_ENABLED, V_TRUE);
httpRequest.configure(option.get());
@@ -214,6 +188,7 @@ void HttpRequestTest::testCreateRequest()
CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
+ // enable http proxy auth
option->put(PREF_HTTP_PROXY_AUTH_ENABLED, V_TRUE);
httpRequest.configure(option.get());
@@ -280,17 +255,6 @@ void HttpRequestTest::testCreateRequest()
void HttpRequestTest::testCreateRequest_ftp()
{
- RequestHandle request = new Request();
- request->setUrl("ftp://localhost:8080/archives/aria2-1.0.0.tar.bz2");
- AuthConfigHandle authConfig = new AuthConfig();
- request->setUserDefinedAuthConfig(authConfig);
- SegmentHandle segment = new Segment();
-
- HttpRequest httpRequest;
-
- httpRequest.setRequest(request);
- httpRequest.setSegment(segment);
-
SharedHandle<Option> option = new Option();
option->put(PREF_HTTP_AUTH_ENABLED, V_FALSE);
option->put(PREF_HTTP_PROXY_ENABLED, V_FALSE);
@@ -301,8 +265,20 @@ void HttpRequestTest::testCreateRequest_ftp()
option->put(PREF_HTTP_PROXY_USER, "aria2proxyuser");
option->put(PREF_HTTP_PROXY_PASSWD, "aria2proxypasswd");
+ RequestFactory requestFactory;
+ requestFactory.setOption(option.get());
+
+ RequestHandle request = requestFactory.createRequest();
+ request->setUrl("ftp://localhost:8080/archives/aria2-1.0.0.tar.bz2");
+
+ SegmentHandle segment = new Segment();
+
+ HttpRequest httpRequest;
+
+ httpRequest.setRequest(request);
+ httpRequest.setSegment(segment);
+
httpRequest.configure(option.get());
- authConfig->configure(option.get());
string expectedText = "GET ftp://localhost:8080/archives/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
"User-Agent: aria2\r\n"
diff --git a/test/Makefile.am b/test/Makefile.am
index d13dcf15..a3937a25 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,15 +1,14 @@
TESTS = aria2c
check_PROGRAMS = $(TESTS)
aria2c_SOURCES = AllTest.cc\
- NetrcTest.cc\
+ RequestTest.cc\
HttpRequestTest.cc\
- AuthConfigTest.cc\
+ NetrcTest.cc\
SingletonHolderTest.cc\
HttpHeaderTest.cc\
HttpResponseTest.cc\
BitfieldManTest.cc\
SharedHandleTest.cc\
- RequestTest.cc\
ChunkedEncodingTest.cc\
FileTest.cc\
OptionTest.cc\
diff --git a/test/Makefile.in b/test/Makefile.in
index e86bd085..01f61700 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -57,14 +57,13 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
am__EXEEXT_1 = aria2c$(EXEEXT)
-am_aria2c_OBJECTS = AllTest.$(OBJEXT) NetrcTest.$(OBJEXT) \
- HttpRequestTest.$(OBJEXT) AuthConfigTest.$(OBJEXT) \
+am_aria2c_OBJECTS = AllTest.$(OBJEXT) RequestTest.$(OBJEXT) \
+ HttpRequestTest.$(OBJEXT) NetrcTest.$(OBJEXT) \
SingletonHolderTest.$(OBJEXT) HttpHeaderTest.$(OBJEXT) \
HttpResponseTest.$(OBJEXT) BitfieldManTest.$(OBJEXT) \
- SharedHandleTest.$(OBJEXT) RequestTest.$(OBJEXT) \
- ChunkedEncodingTest.$(OBJEXT) FileTest.$(OBJEXT) \
- OptionTest.$(OBJEXT) Base64Test.$(OBJEXT) UtilTest.$(OBJEXT) \
- CookieBoxTest.$(OBJEXT) DataTest.$(OBJEXT) \
+ SharedHandleTest.$(OBJEXT) ChunkedEncodingTest.$(OBJEXT) \
+ FileTest.$(OBJEXT) OptionTest.$(OBJEXT) Base64Test.$(OBJEXT) \
+ UtilTest.$(OBJEXT) CookieBoxTest.$(OBJEXT) DataTest.$(OBJEXT) \
DictionaryTest.$(OBJEXT) ListTest.$(OBJEXT) \
MetaFileUtilTest.$(OBJEXT) ShaVisitorTest.$(OBJEXT) \
PeerMessageUtilTest.$(OBJEXT) DefaultDiskWriterTest.$(OBJEXT) \
@@ -259,15 +258,14 @@ sysconfdir = @sysconfdir@
target_alias = @target_alias@
TESTS = aria2c
aria2c_SOURCES = AllTest.cc\
- NetrcTest.cc\
+ RequestTest.cc\
HttpRequestTest.cc\
- AuthConfigTest.cc\
+ NetrcTest.cc\
SingletonHolderTest.cc\
HttpHeaderTest.cc\
HttpResponseTest.cc\
BitfieldManTest.cc\
SharedHandleTest.cc\
- RequestTest.cc\
ChunkedEncodingTest.cc\
FileTest.cc\
OptionTest.cc\
@@ -389,7 +387,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AllTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AnnounceListTest.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/AuthConfigTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Base64Test.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BitfieldManTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtAllowedFastMessageTest.Po@am__quote@
diff --git a/test/RequestTest.cc b/test/RequestTest.cc
index d76f2c55..1af40569 100644
--- a/test/RequestTest.cc
+++ b/test/RequestTest.cc
@@ -1,5 +1,7 @@
#include "Request.h"
#include "Netrc.h"
+#include "DefaultAuthResolver.h"
+#include "NetrcAuthResolver.h"
#include <cppunit/extensions/HelperMacros.h>
class RequestTest:public CppUnit::TestFixture {
@@ -25,12 +27,10 @@ class RequestTest:public CppUnit::TestFixture {
CPPUNIT_TEST(testSafeChar);
CPPUNIT_TEST(testInnerLink);
CPPUNIT_TEST(testMetalink);
- CPPUNIT_TEST(testResolveHttpAuthConfigItem);
- CPPUNIT_TEST(testResolveHttpAuthConfigItem_noCandidate);
- CPPUNIT_TEST(testResolveHttpProxyAuthConfigItem);
- CPPUNIT_TEST(testResolveHttpProxyAuthConfigItem_noCandidate);
- CPPUNIT_TEST(testResolveFtpAuthConfigItem);
- CPPUNIT_TEST(testResolveFtpAuthConfigItem_noCandidate);
+ CPPUNIT_TEST(testResolveHttpAuthConfig);
+ CPPUNIT_TEST(testResolveHttpAuthConfig_noCandidate);
+ CPPUNIT_TEST(testResolveHttpProxyAuthConfig);
+ CPPUNIT_TEST(testResolveFtpAuthConfig);
CPPUNIT_TEST_SUITE_END();
public:
@@ -54,12 +54,10 @@ public:
void testSafeChar();
void testInnerLink();
void testMetalink();
- void testResolveHttpAuthConfigItem();
- void testResolveHttpAuthConfigItem_noCandidate();
- void testResolveHttpProxyAuthConfigItem();
- void testResolveHttpProxyAuthConfigItem_noCandidate();
- void testResolveFtpAuthConfigItem();
- void testResolveFtpAuthConfigItem_noCandidate();
+ void testResolveHttpAuthConfig();
+ void testResolveHttpAuthConfig_noCandidate();
+ void testResolveHttpProxyAuthConfig();
+ void testResolveFtpAuthConfig();
};
@@ -306,117 +304,77 @@ void RequestTest::testMetalink() {
CPPUNIT_ASSERT(!v2);
}
-void RequestTest::testResolveHttpAuthConfigItem()
+void RequestTest::testResolveHttpAuthConfig()
{
Request req;
req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
- // with no authConfig
- CPPUNIT_ASSERT(req.resolveHttpAuthConfigItem().isNull());
+ // with DefaultAuthResolver
+ DefaultAuthResolverHandle defaultAuthResolver = new DefaultAuthResolver();
+ req.setHttpAuthResolver(defaultAuthResolver);
+ CPPUNIT_ASSERT(!req.resolveHttpAuthConfig().isNull());
+ CPPUNIT_ASSERT_EQUAL(string(":"),
+ req.resolveHttpAuthConfig()->getAuthText());
// with Netrc
NetrcHandle netrc = new Netrc();
netrc->addAuthenticator(new DefaultAuthenticator("default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(!req.resolveHttpAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig1 = req.resolveHttpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("default"), authConfig1->getUser());
- CPPUNIT_ASSERT_EQUAL(string("defaultpassword"), authConfig1->getPassword());
+ NetrcAuthResolverHandle netrcAuthResolver = new NetrcAuthResolver();
+ netrcAuthResolver->setNetrc(netrc);
+ req.setHttpAuthResolver(netrcAuthResolver);
+ AuthConfigHandle authConfig1 = req.resolveHttpAuthConfig();
+ CPPUNIT_ASSERT(!authConfig1.isNull());
+ CPPUNIT_ASSERT_EQUAL(string("default:defaultpassword"),
+ authConfig1->getAuthText());
// with Netrc + user defined
- AuthConfigHandle authConfig = new AuthConfig();
- authConfig->setHttpAuthConfigItem("userDefinedUser", "userDefinedPassword");
- req.setUserDefinedAuthConfig(authConfig);
- CPPUNIT_ASSERT(!req.resolveHttpAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig2 = req.resolveHttpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("userDefinedUser"), authConfig2->getUser());
- CPPUNIT_ASSERT_EQUAL(string("userDefinedPassword"), authConfig2->getPassword());
+ AuthConfigHandle authConfig =
+ new AuthConfig("userDefinedUser", "userDefinedPassword");
+ netrcAuthResolver->setUserDefinedAuthConfig(authConfig);
+ AuthConfigHandle authConfig2 = req.resolveHttpAuthConfig();
+ CPPUNIT_ASSERT(!authConfig2.isNull());
+ CPPUNIT_ASSERT_EQUAL(string("userDefinedUser:userDefinedPassword"),
+ authConfig2->getAuthText());
}
-void RequestTest::testResolveHttpAuthConfigItem_noCandidate()
+void RequestTest::testResolveHttpAuthConfig_noCandidate()
{
Request req;
req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
- NetrcHandle netrc = new Netrc();
- netrc->addAuthenticator(new Authenticator("localhost2", "default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(req.resolveHttpAuthConfigItem().isNull());
+ DefaultAuthResolverHandle defaultAuthResolver = new DefaultAuthResolver();
+ req.setHttpAuthResolver(defaultAuthResolver);
+ CPPUNIT_ASSERT_EQUAL(string(":"),
+ req.resolveHttpAuthConfig()->getAuthText());
}
-void RequestTest::testResolveHttpProxyAuthConfigItem()
+void RequestTest::testResolveHttpProxyAuthConfig()
{
Request req;
req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
- // with no authConfig
- CPPUNIT_ASSERT(req.resolveHttpProxyAuthConfigItem().isNull());
-
// with Netrc
NetrcHandle netrc = new Netrc();
netrc->addAuthenticator(new DefaultAuthenticator("default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(!req.resolveHttpProxyAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig1 = req.resolveHttpProxyAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("default"), authConfig1->getUser());
- CPPUNIT_ASSERT_EQUAL(string("defaultpassword"), authConfig1->getPassword());
-
- // with Netrc + user defined
- AuthConfigHandle authConfig = new AuthConfig();
- authConfig->setHttpProxyAuthConfigItem("userDefinedUser", "userDefinedPassword");
- req.setUserDefinedAuthConfig(authConfig);
- CPPUNIT_ASSERT(!req.resolveHttpProxyAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig2 = req.resolveHttpProxyAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("userDefinedUser"), authConfig2->getUser());
- CPPUNIT_ASSERT_EQUAL(string("userDefinedPassword"), authConfig2->getPassword());
-}
-
-void RequestTest::testResolveHttpProxyAuthConfigItem_noCandidate()
-{
- Request req;
- req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
-
- NetrcHandle netrc = new Netrc();
- netrc->addAuthenticator(new Authenticator("localhost2", "default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(req.resolveHttpProxyAuthConfigItem().isNull());
+ NetrcAuthResolverHandle netrcAuthResolver = new NetrcAuthResolver();
+ netrcAuthResolver->setNetrc(netrc);
+ req.setHttpProxyAuthResolver(netrcAuthResolver);
+ AuthConfigHandle authConfig1 = req.resolveHttpProxyAuthConfig();
+ CPPUNIT_ASSERT(!authConfig1.isNull());
+ CPPUNIT_ASSERT_EQUAL(string("default:defaultpassword"),
+ authConfig1->getAuthText());
}
-void RequestTest::testResolveFtpAuthConfigItem()
+void RequestTest::testResolveFtpAuthConfig()
{
Request req;
req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
- // with no authConfig
- CPPUNIT_ASSERT(!req.resolveFtpAuthConfigItem().isNull());
- CPPUNIT_ASSERT_EQUAL(string("anonymous"), req.resolveFtpAuthConfigItem()->getUser());
- CPPUNIT_ASSERT_EQUAL(string("ARIA2USER@"), req.resolveFtpAuthConfigItem()->getPassword());
-
// with Netrc
NetrcHandle netrc = new Netrc();
netrc->addAuthenticator(new DefaultAuthenticator("default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(!req.resolveFtpAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig1 = req.resolveFtpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("default"), authConfig1->getUser());
- CPPUNIT_ASSERT_EQUAL(string("defaultpassword"), authConfig1->getPassword());
-
- // with Netrc + user defined
- AuthConfigHandle authConfig = new AuthConfig();
- authConfig->setFtpAuthConfigItem("userDefinedUser", "userDefinedPassword");
- req.setUserDefinedAuthConfig(authConfig);
- CPPUNIT_ASSERT(!req.resolveFtpAuthConfigItem().isNull());
- AuthConfigItemHandle authConfig2 = req.resolveFtpAuthConfigItem();
- CPPUNIT_ASSERT_EQUAL(string("userDefinedUser"), authConfig2->getUser());
- CPPUNIT_ASSERT_EQUAL(string("userDefinedPassword"), authConfig2->getPassword());
-}
-
-void RequestTest::testResolveFtpAuthConfigItem_noCandidate()
-{
- Request req;
- req.setUrl("http://localhost/download/aria2-1.0.0.tar.bz2");
-
- NetrcHandle netrc = new Netrc();
- netrc->addAuthenticator(new Authenticator("localhost2", "default", "defaultpassword", "defaultaccount"));
- NetrcSingletonHolder::instance(netrc);
- CPPUNIT_ASSERT(!req.resolveFtpAuthConfigItem().isNull());
- CPPUNIT_ASSERT_EQUAL(string("anonymous"), req.resolveFtpAuthConfigItem()->getUser());
- CPPUNIT_ASSERT_EQUAL(string("ARIA2USER@"), req.resolveFtpAuthConfigItem()->getPassword());
+ NetrcAuthResolverHandle netrcAuthResolver = new NetrcAuthResolver();
+ netrcAuthResolver->setNetrc(netrc);
+ req.setFtpAuthResolver(netrcAuthResolver);
+ AuthConfigHandle authConfig1 = req.resolveFtpAuthConfig();
+ CPPUNIT_ASSERT(!authConfig1.isNull());
+ CPPUNIT_ASSERT_EQUAL(string("default:defaultpassword"),
+ authConfig1->getAuthText());
}
diff --git a/test/TrackerWatcherCommandTest.cc b/test/TrackerWatcherCommandTest.cc
index b71a53af..9352cb6a 100644
--- a/test/TrackerWatcherCommandTest.cc
+++ b/test/TrackerWatcherCommandTest.cc
@@ -10,6 +10,7 @@
#include "DefaultPieceStorage.h"
#include "DefaultPeerStorage.h"
#include "BtRegistry.h"
+#include "RequestFactory.h"
#include <cppunit/extensions/HelperMacros.h>
using namespace std;
@@ -20,11 +21,18 @@ class TrackerWatcherCommandTest:public CppUnit::TestFixture {
CPPUNIT_TEST(testCreateCommand);
CPPUNIT_TEST_SUITE_END();
private:
-
+ Option* op;
public:
- void setUp() {
+ TrackerWatcherCommandTest():op(new Option())
+ {
+ op->put(PREF_TRACKER_MAX_TRIES, "10");
+ RequestFactoryHandle requestFactory = new RequestFactory();
+ requestFactory->setOption(op);
+ RequestFactorySingletonHolder::instance(requestFactory);
}
+ void setUp() {}
+
void testCreateCommand();
};
@@ -33,8 +41,6 @@ CPPUNIT_TEST_SUITE_REGISTRATION( TrackerWatcherCommandTest );
void TrackerWatcherCommandTest::testCreateCommand() {
try {
- Option* op = new Option();
- op->put(PREF_TRACKER_MAX_TRIES, "10");
BtContextHandle btContext(new DefaultBtContext());
btContext->load("test.torrent");