def testonerror_noparam(self): summer.download_set_default (tmp_dir = ".", save_dir = ".") loop = glib.MainLoop () i = summer.ItemData () i.append_downloadable ('http://blubb') dl = summer.create_download (i) def error_cb (inner_dl, error): loop.quit () self.assertEqual (inner_dl, dl) self.assertEqual (error.message, "Download failed: Cannot resolve hostname") self.assertEqual (inner_dl.get_property ('url'), 'http://blubb') dl.on_error (error_cb) dl.start () loop.run ()
import glib except ImportError: import gobject as glib import river_plugins parser = OptionParser () parser.add_option ("--no-cache", dest = "no_cache", help = "Disable the cache file, forcing River to download everything it sees", action = "store_true", default = False) parser.add_option ("-c", "--config", dest = "config", help = "Use a custom config file instead the default", default = None) (options, args) = parser.parse_args () config = river_config.Config (options.config).result summer.download_set_default (tmp_dir = config.get ('tmp_dir'), save_dir = config.get ('save_dir')) if options.no_cache: cache = None else: cache = config.get ('tmp_dir') summer.feed_set_default (cache_dir = cache, frequency = config.get ('frequency', 0)) if config.get ('torrent_min_port') and config.get ('torrent_max_port'): summer.torrent_set_default (min_port = config['torrent_min_port'], max_port = config['torrent_max_port']) plugins = river_plugins.Plugins(config['plugins']) def on_download_complete (dl, item): plugins.download_complete (dl, item) def on_download_started (dl, item):