diff options
| -rw-r--r-- | ChangeLog | 10 | ||||
| -rw-r--r-- | src/FileUriListParser.h | 63 | ||||
| -rw-r--r-- | src/Makefile.am | 2 | ||||
| -rw-r--r-- | src/Makefile.in | 8 | ||||
| -rw-r--r-- | src/StreamUriListParser.h | 59 | ||||
| -rw-r--r-- | src/UriListParser.cc (renamed from src/UriFileListParser.cc) | 10 | ||||
| -rw-r--r-- | src/UriListParser.h (renamed from src/UriFileListParser.h) | 32 | ||||
| -rw-r--r-- | src/main.cc | 9 | ||||
| -rw-r--r-- | test/Makefile.am | 3 | ||||
| -rw-r--r-- | test/Makefile.in | 288 | ||||
| -rw-r--r-- | test/UriFileListParserTest.cc | 49 |
11 files changed, 244 insertions, 289 deletions
@@ -1,3 +1,13 @@ +2007-07-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com> + + Reads URIs from stdin when "-i -" is specified. + * src/UriFileListParser.h, src/UriFileListParser.cc: Removed. + * src/UriListParser.h, src/UriListParser.cc: New class. + * src/StreamUriListParser.h: New class. + * src/FileUriListParser.h: New class. + * src/main.cc (main): Use StreamUriListParser and FileUriListParser + instead of UriFileListParser. + 2007-07-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com> Made console readout more readable. diff --git a/src/FileUriListParser.h b/src/FileUriListParser.h new file mode 100644 index 00000000..a69c71cf --- /dev/null +++ b/src/FileUriListParser.h @@ -0,0 +1,63 @@ +/* <!-- copyright */ +/* + * aria2 - The high speed download utility + * + * Copyright (C) 2006 Tatsuhiro Tsujikawa + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * In addition, as a special exception, the copyright holders give + * permission to link the code of portions of this program with the + * OpenSSL library under certain conditions as described in each + * individual source file, and distribute linked combinations + * including the two. + * You must obey the GNU General Public License in all respects + * for all of the code used other than OpenSSL. If you modify + * file(s) with this exception, you may extend this exception to your + * version of the file(s), but you are not obligated to do so. If you + * do not wish to do so, delete this exception statement from your + * version. If you delete this exception statement from all source + * files in the program, then also delete it here. + */ +/* copyright --> */ +#ifndef _D_FILE_URI_LIST_PARSER_H_ +#define _D_FILE_URI_LIST_PARSER_H_ + +#include "UriListParser.h" +#include <fstream> + +class FileUriListParser : public UriListParser { +private: + string _filename; + ifstream _ifs; + +protected: + virtual istream& getInputStream() + { + return _ifs; + } + + virtual const istream& getInputStream() const + { + return _ifs; + } + +public: + FileUriListParser(const string& filename):_filename(filename), _ifs(filename.c_str()) {} + + virtual ~FileUriListParser() {} +}; + +#endif // _D_FILE_URI_LIST_PARSER_H_ diff --git a/src/Makefile.am b/src/Makefile.am index f59bdd0b..77246d84 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -87,7 +87,7 @@ SRCS = Socket.h\ FileAllocationDispatcherCommand.cc FileAllocationDispatcherCommand.h\ FileAllocationEntry.cc FileAllocationEntry.h\ MultiUrlRequestInfo.cc MultiUrlRequestInfo.h\ - UriFileListParser.cc UriFileListParser.h\ + UriListParser.cc UriListParser.h\ SegmentManFactory.h\ AbstractSegmentManFactory.h\ DefaultSegmentManFactory.cc DefaultSegmentManFactory.h\ diff --git a/src/Makefile.in b/src/Makefile.in index d3a4e06f..4775683b 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -236,7 +236,7 @@ am__libaria2c_a_SOURCES_DIST = Socket.h SocketCore.cc SocketCore.h \ FillRequestGroupCommand.h FileAllocationDispatcherCommand.cc \ FileAllocationDispatcherCommand.h FileAllocationEntry.cc \ FileAllocationEntry.h MultiUrlRequestInfo.cc \ - MultiUrlRequestInfo.h UriFileListParser.cc UriFileListParser.h \ + MultiUrlRequestInfo.h UriListParser.cc UriListParser.h \ SegmentManFactory.h AbstractSegmentManFactory.h \ DefaultSegmentManFactory.cc DefaultSegmentManFactory.h \ RealtimeCommand.cc RealtimeCommand.h ProgressAwareEntry.h \ @@ -432,7 +432,7 @@ am__objects_4 = SocketCore.$(OBJEXT) Command.$(OBJEXT) \ FillRequestGroupCommand.$(OBJEXT) \ FileAllocationDispatcherCommand.$(OBJEXT) \ FileAllocationEntry.$(OBJEXT) MultiUrlRequestInfo.$(OBJEXT) \ - UriFileListParser.$(OBJEXT) DefaultSegmentManFactory.$(OBJEXT) \ + UriListParser.$(OBJEXT) DefaultSegmentManFactory.$(OBJEXT) \ RealtimeCommand.$(OBJEXT) RequestGroupEntry.$(OBJEXT) \ Cookie.$(OBJEXT) CookieParser.$(OBJEXT) \ CookieBoxFactory.$(OBJEXT) HttpHeaderProcessor.$(OBJEXT) \ @@ -661,7 +661,7 @@ SRCS = Socket.h SocketCore.cc SocketCore.h Command.cc Command.h \ FillRequestGroupCommand.h FileAllocationDispatcherCommand.cc \ FileAllocationDispatcherCommand.h FileAllocationEntry.cc \ FileAllocationEntry.h MultiUrlRequestInfo.cc \ - MultiUrlRequestInfo.h UriFileListParser.cc UriFileListParser.h \ + MultiUrlRequestInfo.h UriListParser.cc UriListParser.h \ SegmentManFactory.h AbstractSegmentManFactory.h \ DefaultSegmentManFactory.cc DefaultSegmentManFactory.h \ RealtimeCommand.cc RealtimeCommand.h ProgressAwareEntry.h \ @@ -906,7 +906,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrackerSegmentManFactory.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrackerUpdateCommand.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrackerWatcherCommand.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UriFileListParser.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UriListParser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Util.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Xml2MetalinkProcessor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ diff --git a/src/StreamUriListParser.h b/src/StreamUriListParser.h new file mode 100644 index 00000000..f169f445 --- /dev/null +++ b/src/StreamUriListParser.h @@ -0,0 +1,59 @@ +/* <!-- copyright */ +/* + * aria2 - The high speed download utility + * + * Copyright (C) 2006 Tatsuhiro Tsujikawa + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * In addition, as a special exception, the copyright holders give + * permission to link the code of portions of this program with the + * OpenSSL library under certain conditions as described in each + * individual source file, and distribute linked combinations + * including the two. + * You must obey the GNU General Public License in all respects + * for all of the code used other than OpenSSL. If you modify + * file(s) with this exception, you may extend this exception to your + * version of the file(s), but you are not obligated to do so. If you + * do not wish to do so, delete this exception statement from your + * version. If you delete this exception statement from all source + * files in the program, then also delete it here. + */ +/* copyright --> */ +#ifndef _D_STREAM_URI_LIST_PARSER_H_ +#define _D_STREAM_URI_LIST_PARSER_H_ + +#include "UriListParser.h" + +class StreamUriListParser : public UriListParser { +private: + istream* _ifs; +protected: + virtual istream& getInputStream() + { + return *_ifs; + } + + virtual const istream& getInputStream() const + { + return *_ifs; + } +public: + StreamUriListParser(istream& ifs):_ifs(&ifs) {} + + virtual ~StreamUriListParser() {} +}; + +#endif // _D_STREAM_URI_LIST_PARSER_H_ diff --git a/src/UriFileListParser.cc b/src/UriListParser.cc index bed46448..b5a06ebb 100644 --- a/src/UriFileListParser.cc +++ b/src/UriListParser.cc @@ -32,18 +32,18 @@ * files in the program, then also delete it here. */ /* copyright --> */ -#include "UriFileListParser.h" +#include "UriListParser.h" #include "Util.h" -bool UriFileListParser::hasNext() const +bool UriListParser::hasNext() const { - return *_ifs; + return getInputStream(); } -Strings UriFileListParser::next() +Strings UriListParser::next() { string line; - while(getline(*_ifs, line)) { + while(getline(getInputStream(), line)) { if(Util::trim(line) != "") { Strings uris; Util::slice(uris, line, '\t', true); diff --git a/src/UriFileListParser.h b/src/UriListParser.h index 83f720d2..5356c728 100644 --- a/src/UriFileListParser.h +++ b/src/UriListParser.h @@ -32,35 +32,25 @@ * files in the program, then also delete it here. */ /* copyright --> */ -#ifndef _D_URI_FILE_LIST_PARSER_H_ -#define _D_URI_FILE_LIST_PARSER_H_ +#ifndef _D_URI_LIST_PARSER_H_ +#define _D_URI_LIST_PARSER_H_ #include "common.h" -#include <fstream> +#include <istream> -class UriFileListParser { -private: - string _filename; - istream* _ifs; - bool _deleteOnExit; -public: - UriFileListParser(const string& filename):_filename(filename), _ifs(new ifstream(filename.c_str())), _deleteOnExit(true) {} - - UriFileListParser():_ifs(0) {} +class UriListParser { +protected: + virtual istream& getInputStream() = 0; + virtual const istream& getInputStream() const = 0; - UriFileListParser(istream& ifs):_filename("-"), _ifs(&ifs), _deleteOnExit(false) - {} +public: + UriListParser() {} - ~UriFileListParser() - { - if(_deleteOnExit) { - delete _ifs; - } - } + virtual ~UriListParser() {} bool hasNext() const; Strings next(); }; -#endif // _D_URI_FILE_LIST_PARSER_H_ +#endif // _D_URI_LIST_PARSER_H_ diff --git a/src/main.cc b/src/main.cc index 209c149b..933c6be9 100644 --- a/src/main.cc +++ b/src/main.cc @@ -49,7 +49,8 @@ #include "FatalException.h" #include "File.h" #include "CUIDCounter.h" -#include "UriFileListParser.h" +#include "FileUriListParser.h" +#include "StreamUriListParser.h" #include "CookieBoxFactory.h" #include "a2algo.h" #include "message.h" @@ -755,14 +756,14 @@ int main(int argc, char* argv[]) { else #endif // ENABLE_METALINK if(op->defined(PREF_INPUT_FILE)) { - SharedHandle<UriFileListParser> flparser(0); + SharedHandle<UriListParser> flparser(0); if(op->get(PREF_INPUT_FILE) == "-") { - flparser = new UriFileListParser(cin); + flparser = new StreamUriListParser(cin); } else { if(!File(op->get(PREF_INPUT_FILE)).isFile()) { throw new FatalException(EX_FILE_OPEN, op->get(PREF_INPUT_FILE).c_str(), "No such file"); } - flparser = new UriFileListParser(op->get(PREF_INPUT_FILE)); + flparser = new FileUriListParser(op->get(PREF_INPUT_FILE)); } RequestGroups groups; while(flparser->hasNext()) { diff --git a/test/Makefile.am b/test/Makefile.am index acd2a8e7..8e82e22e 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -1,6 +1,8 @@ TESTS = aria2c check_PROGRAMS = $(TESTS) aria2c_SOURCES = AllTest.cc\ + FileUriListParserTest.cc\ + StreamUriListParserTest.cc\ HttpHeaderProcessorTest.cc\ UtilTest.cc\ CookieBoxTest.cc\ @@ -12,7 +14,6 @@ aria2c_SOURCES = AllTest.cc\ RequestGroupManTest.cc\ IteratableChecksumValidatorTest.cc\ IteratableChunkChecksumValidatorTest.cc\ - UriFileListParserTest.cc\ PeerTest.cc\ DefaultPeerStorageTest.cc\ RequestFactoryTest.cc\ diff --git a/test/Makefile.in b/test/Makefile.in index 98a34ebd..b11bd301 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -57,54 +57,8 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = am__EXEEXT_1 = aria2c$(EXEEXT) -am_aria2c_OBJECTS = AllTest.$(OBJEXT) \ - HttpHeaderProcessorTest.$(OBJEXT) UtilTest.$(OBJEXT) \ - CookieBoxTest.$(OBJEXT) RequestTest.$(OBJEXT) \ - CookieParserTest.$(OBJEXT) HttpRequestTest.$(OBJEXT) \ - CookieBoxFactoryTest.$(OBJEXT) \ - ByteArrayDiskWriterTest.$(OBJEXT) \ - RequestGroupManTest.$(OBJEXT) \ - IteratableChecksumValidatorTest.$(OBJEXT) \ - IteratableChunkChecksumValidatorTest.$(OBJEXT) \ - UriFileListParserTest.$(OBJEXT) PeerTest.$(OBJEXT) \ - DefaultPeerStorageTest.$(OBJEXT) RequestFactoryTest.$(OBJEXT) \ - NetrcAuthResolverTest.$(OBJEXT) \ - DefaultAuthResolverTest.$(OBJEXT) OptionHandlerTest.$(OBJEXT) \ - SegmentManTest.$(OBJEXT) BitfieldManTest.$(OBJEXT) \ - GlowFileAllocatorTest.$(OBJEXT) NetrcTest.$(OBJEXT) \ - SingletonHolderTest.$(OBJEXT) HttpHeaderTest.$(OBJEXT) \ - HttpResponseTest.$(OBJEXT) SharedHandleTest.$(OBJEXT) \ - ChunkedEncodingTest.$(OBJEXT) FileTest.$(OBJEXT) \ - OptionTest.$(OBJEXT) Base64Test.$(OBJEXT) DataTest.$(OBJEXT) \ - DictionaryTest.$(OBJEXT) ListTest.$(OBJEXT) \ - MetaFileUtilTest.$(OBJEXT) ShaVisitorTest.$(OBJEXT) \ - PeerMessageUtilTest.$(OBJEXT) DefaultDiskWriterTest.$(OBJEXT) \ - MultiDiskAdaptorTest.$(OBJEXT) \ - Xml2MetalinkProcessorTest.$(OBJEXT) MetalinkerTest.$(OBJEXT) \ - MetalinkEntryTest.$(OBJEXT) FeatureConfigTest.$(OBJEXT) \ - ShareRatioSeedCriteriaTest.$(OBJEXT) \ - TimeSeedCriteriaTest.$(OBJEXT) SpeedCalcTest.$(OBJEXT) \ - DefaultPeerListProcessorTest.$(OBJEXT) \ - AnnounceListTest.$(OBJEXT) TrackerWatcherCommandTest.$(OBJEXT) \ - DefaultBtContextTest.$(OBJEXT) \ - DefaultPieceStorageTest.$(OBJEXT) \ - DefaultBtAnnounceTest.$(OBJEXT) BtRegistryTest.$(OBJEXT) \ - DefaultBtMessageDispatcherTest.$(OBJEXT) \ - DefaultBtRequestFactoryTest.$(OBJEXT) \ - BtAllowedFastMessageTest.$(OBJEXT) \ - BtBitfieldMessageTest.$(OBJEXT) BtCancelMessageTest.$(OBJEXT) \ - BtChokeMessageTest.$(OBJEXT) BtHaveAllMessageTest.$(OBJEXT) \ - BtHaveMessageTest.$(OBJEXT) BtHaveNoneMessageTest.$(OBJEXT) \ - BtInterestedMessageTest.$(OBJEXT) \ - BtKeepAliveMessageTest.$(OBJEXT) \ - BtNotInterestedMessageTest.$(OBJEXT) \ - BtPieceMessageTest.$(OBJEXT) BtPortMessageTest.$(OBJEXT) \ - BtRejectMessageTest.$(OBJEXT) BtRequestMessageTest.$(OBJEXT) \ - BtSuggestPieceMessageTest.$(OBJEXT) \ - BtUnchokeMessageTest.$(OBJEXT) \ - BtHandshakeMessageTest.$(OBJEXT) \ - ConsoleFileAllocationMonitorTest.$(OBJEXT) \ - ChunkChecksumValidatorTest.$(OBJEXT) +am_aria2c_OBJECTS = AllTest.$(OBJEXT) FileUriListParserTest.$(OBJEXT) \ + StreamUriListParserTest.$(OBJEXT) aria2c_OBJECTS = $(am_aria2c_OBJECTS) am__DEPENDENCIES_1 = aria2c_DEPENDENCIES = ../src/libaria2c.a $(am__DEPENDENCIES_1) @@ -116,10 +70,6 @@ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(aria2c_SOURCES) DIST_SOURCES = $(aria2c_SOURCES) ETAGS = etags @@ -271,85 +221,86 @@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ TESTS = aria2c aria2c_SOURCES = AllTest.cc\ - HttpHeaderProcessorTest.cc\ - UtilTest.cc\ - CookieBoxTest.cc\ - RequestTest.cc\ - CookieParserTest.cc\ - HttpRequestTest.cc\ - CookieBoxFactoryTest.cc\ - ByteArrayDiskWriterTest.cc\ - RequestGroupManTest.cc\ - IteratableChecksumValidatorTest.cc\ - IteratableChunkChecksumValidatorTest.cc\ - UriFileListParserTest.cc\ - PeerTest.cc\ - DefaultPeerStorageTest.cc\ - RequestFactoryTest.cc\ - NetrcAuthResolverTest.cc\ - DefaultAuthResolverTest.cc\ - OptionHandlerTest.cc\ - SegmentManTest.cc\ - BitfieldManTest.cc\ - GlowFileAllocatorTest.cc\ - NetrcTest.cc\ - SingletonHolderTest.cc\ - HttpHeaderTest.cc\ - HttpResponseTest.cc\ - SharedHandleTest.cc\ - ChunkedEncodingTest.cc\ - FileTest.cc\ - OptionTest.cc\ - Base64Test.cc\ - DataTest.cc\ - DictionaryTest.cc\ - ListTest.cc\ - MetaFileUtilTest.cc\ - ShaVisitorTest.cc\ - PeerMessageUtilTest.cc\ - DefaultDiskWriterTest.cc\ - MultiDiskAdaptorTest.cc\ - Xml2MetalinkProcessorTest.cc\ - MetalinkerTest.cc\ - MetalinkEntryTest.cc\ - FeatureConfigTest.cc\ - ShareRatioSeedCriteriaTest.cc\ - TimeSeedCriteriaTest.cc\ - SpeedCalcTest.cc\ - DefaultPeerListProcessorTest.cc\ - AnnounceListTest.cc\ - TrackerWatcherCommandTest.cc\ - DefaultBtContextTest.cc\ - DefaultPieceStorageTest.cc\ - DefaultBtAnnounceTest.cc\ - BtRegistryTest.cc\ - DefaultBtMessageDispatcherTest.cc\ - MockPeerStorage.h\ - DefaultBtRequestFactoryTest.cc\ - BtAllowedFastMessageTest.cc\ - BtBitfieldMessageTest.cc\ - BtCancelMessageTest.cc\ - BtChokeMessageTest.cc\ - BtHaveAllMessageTest.cc\ - BtHaveMessageTest.cc\ - BtHaveNoneMessageTest.cc\ - BtInterestedMessageTest.cc\ - BtKeepAliveMessageTest.cc\ - BtNotInterestedMessageTest.cc\ - BtPieceMessageTest.cc\ - BtPortMessageTest.cc\ - BtRejectMessageTest.cc\ - BtRequestMessageTest.cc\ - BtSuggestPieceMessageTest.cc\ - BtUnchokeMessageTest.cc\ - BtHandshakeMessageTest.cc\ - MockBtMessageDispatcher.h\ - FixedNumberRandomizer.h\ - MockBtMessageFactory.h\ - MockBtMessage.h\ - ConsoleFileAllocationMonitorTest.cc\ - ChunkChecksumValidatorTest.cc - + FileUriListParserTest.cc\ + StreamUriListParserTest.cc + +# HttpHeaderProcessorTest.cc\ +# UtilTest.cc\ +# CookieBoxTest.cc\ +# RequestTest.cc\ +# CookieParserTest.cc\ +# HttpRequestTest.cc\ +# CookieBoxFactoryTest.cc\ +# ByteArrayDiskWriterTest.cc\ +# RequestGroupManTest.cc\ +# IteratableChecksumValidatorTest.cc\ +# IteratableChunkChecksumValidatorTest.cc\ +# PeerTest.cc\ +# DefaultPeerStorageTest.cc\ +# RequestFactoryTest.cc\ +# NetrcAuthResolverTest.cc\ +# DefaultAuthResolverTest.cc\ +# OptionHandlerTest.cc\ +# SegmentManTest.cc\ +# BitfieldManTest.cc\ +# GlowFileAllocatorTest.cc\ +# NetrcTest.cc\ +# SingletonHolderTest.cc\ +# HttpHeaderTest.cc\ +# HttpResponseTest.cc\ +# SharedHandleTest.cc\ +# ChunkedEncodingTest.cc\ +# FileTest.cc\ +# OptionTest.cc\ +# Base64Test.cc\ +# DataTest.cc\ +# DictionaryTest.cc\ +# ListTest.cc\ +# MetaFileUtilTest.cc\ +# ShaVisitorTest.cc\ +# PeerMessageUtilTest.cc\ +# DefaultDiskWriterTest.cc\ +# MultiDiskAdaptorTest.cc\ +# Xml2MetalinkProcessorTest.cc\ +# MetalinkerTest.cc\ +# MetalinkEntryTest.cc\ +# FeatureConfigTest.cc\ +# ShareRatioSeedCriteriaTest.cc\ +# TimeSeedCriteriaTest.cc\ +# SpeedCalcTest.cc\ +# DefaultPeerListProcessorTest.cc\ +# AnnounceListTest.cc\ +# TrackerWatcherCommandTest.cc\ +# DefaultBtContextTest.cc\ +# DefaultPieceStorageTest.cc\ +# DefaultBtAnnounceTest.cc\ +# BtRegistryTest.cc\ +# DefaultBtMessageDispatcherTest.cc\ +# MockPeerStorage.h\ +# DefaultBtRequestFactoryTest.cc\ +# BtAllowedFastMessageTest.cc\ +# BtBitfieldMessageTest.cc\ +# BtCancelMessageTest.cc\ +# BtChokeMessageTest.cc\ +# BtHaveAllMessageTest.cc\ +# BtHaveMessageTest.cc\ +# BtHaveNoneMessageTest.cc\ +# BtInterestedMessageTest.cc\ +# BtKeepAliveMessageTest.cc\ +# BtNotInterestedMessageTest.cc\ +# BtPieceMessageTest.cc\ +# BtPortMessageTest.cc\ +# BtRejectMessageTest.cc\ +# BtRequestMessageTest.cc\ +# BtSuggestPieceMessageTest.cc\ +# BtUnchokeMessageTest.cc\ +# BtHandshakeMessageTest.cc\ +# MockBtMessageDispatcher.h\ +# FixedNumberRandomizer.h\ +# MockBtMessageFactory.h\ +# MockBtMessage.h\ +# ConsoleFileAllocationMonitorTest.cc\ +# ChunkChecksumValidatorTest.cc #aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -I../lib -Wall -D_FILE_OFFSET_BITS=64 #aria2c_LDFLAGS = ${CPPUNIT_LIBS} aria2c_LDADD = ../src/libaria2c.a\ @@ -412,79 +363,8 @@ distclean-compile: -rm -f *.tab.c @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)/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@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtBitfieldMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtCancelMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtChokeMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHandshakeMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveAllMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtHaveNoneMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtInterestedMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtKeepAliveMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtNotInterestedMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtPieceMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtPortMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRegistryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRejectMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtRequestMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtSuggestPieceMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtUnchokeMessageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ByteArrayDiskWriterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ChunkChecksumValidatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ChunkedEncodingTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ConsoleFileAllocationMonitorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieBoxFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieBoxTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieParserTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DataTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultAuthResolverTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtAnnounceTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtContextTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtMessageDispatcherTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultBtRequestFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultDiskWriterTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPeerListProcessorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPeerStorageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DefaultPieceStorageTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DictionaryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FeatureConfigTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FileTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/GlowFileAllocatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpHeaderProcessorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpHeaderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpRequestTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HttpResponseTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratableChecksumValidatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IteratableChunkChecksumValidatorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ListTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetaFileUtilTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkEntryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MultiDiskAdaptorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NetrcAuthResolverTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/NetrcTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OptionHandlerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/OptionTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PeerMessageUtilTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/PeerTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RequestFactoryTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RequestGroupManTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/RequestTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SegmentManTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShaVisitorTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ShareRatioSeedCriteriaTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SharedHandleTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SingletonHolderTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SpeedCalcTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TimeSeedCriteriaTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/TrackerWatcherCommandTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UriFileListParserTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/UtilTest.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Xml2MetalinkProcessorTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/FileUriListParserTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StreamUriListParserTest.Po@am__quote@ .cc.o: @am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ diff --git a/test/UriFileListParserTest.cc b/test/UriFileListParserTest.cc deleted file mode 100644 index ee4240ce..00000000 --- a/test/UriFileListParserTest.cc +++ /dev/null @@ -1,49 +0,0 @@ -#include "UriFileListParser.h" -#include "Exception.h" -#include "Util.h" -#include <sstream> -#include <algorithm> -#include <iostream> -#include <iterator> -#include <cppunit/extensions/HelperMacros.h> - -using namespace std; - -class UriFileListParserTest : public CppUnit::TestFixture { - - CPPUNIT_TEST_SUITE(UriFileListParserTest); - CPPUNIT_TEST(testHasNext); - CPPUNIT_TEST_SUITE_END(); -private: - -public: - void setUp() { - } - - void testHasNext(); -}; - - -CPPUNIT_TEST_SUITE_REGISTRATION( UriFileListParserTest ); - -string list2String(const Strings& src) -{ - ostringstream strm; - copy(src.begin(), src.end(), ostream_iterator<string>(strm, " ")); - return Util::trim(strm.str()); -} - -void UriFileListParserTest::testHasNext() -{ - UriFileListParser flp("filelist1.txt"); - - CPPUNIT_ASSERT(flp.hasNext()); - CPPUNIT_ASSERT_EQUAL(string("http://localhost/index.html http://localhost2/index.html"), list2String(flp.next())); - CPPUNIT_ASSERT(flp.hasNext()); - CPPUNIT_ASSERT_EQUAL(string("ftp://localhost/aria2.tar.bz2"), - list2String(flp.next())); - CPPUNIT_ASSERT(flp.hasNext()); - CPPUNIT_ASSERT_EQUAL(string(""), - list2String(flp.next())); - CPPUNIT_ASSERT(!flp.hasNext()); -} |
