Merge pull request #792 from fp7/master
[youtube-dl] / youtube_dl / __init__.py
index bac359ac757f1afb9045a29da83fa81491cecdff..8ec7435ca908adb5545bd3b076e051cc7c553a39 100644 (file)
@@ -47,7 +47,7 @@ from .FileDownloader import *
 from .InfoExtractors import gen_extractors
 from .PostProcessor import *
 
-def parseOpts():
+def parseOpts(arguments):
     def _readOptions(filename_bytes):
         try:
             optionf = open(filename_bytes)
@@ -307,8 +307,8 @@ def parseOpts():
         userConfFile = os.path.join(os.path.expanduser('~'), '.config', 'youtube-dl.conf')
     systemConf = _readOptions('/etc/youtube-dl.conf')
     userConf = _readOptions(userConfFile)
-    commandLineConf = sys.argv[1:]
-    argv = systemConf + userConf + commandLineConf
+    commandLineConf = sys.argv[1:] 
+    argv = (systemConf + userConf + commandLineConf) if not arguments else arguments
     opts, args = parser.parse_args(argv)
 
     if opts.verbose:
@@ -318,8 +318,8 @@ def parseOpts():
 
     return parser, opts, args
 
-def _real_main():
-    parser, opts, args = parseOpts()
+def _real_main(argv=None):
+    parser, opts, args = parseOpts(argv)
 
     # Open appropriate CookieJar
     if opts.cookiefile is None:
@@ -553,9 +553,9 @@ def _real_main():
 
     sys.exit(retcode)
 
-def main():
+def main(argv=None):
     try:
-        _real_main()
+        _real_main(argv)
     except DownloadError:
         sys.exit(1)
     except SameFileError: