コード例 #1
0
    def test_factory(self):
        factory = Factory()
        factory.set('dict', dict)

        self.assertNotIn('dict', factory)

        self.assertFalse(factory.is_all_initialized())

        my_instance = factory.new('dict', [('hi', 'hello')])

        self.assertIn('dict', factory)
        self.assertEqual(my_instance, factory['dict'])
        self.assertTrue(factory.is_all_initialized())
コード例 #2
0
 def __init__(self, args):
     self.default_user_agent = 'Wpull/{0} (gzip)'.format(
         wpull.version.__version__)
     self._args = args
     self._factory = Factory({
         'BatchDocumentConverter': BatchDocumentConverter,
         'Client': Client,
         'CookieJar': CookieJar,
         'CookieJarWrapper': CookieJarWrapper,
         'CookiePolicy': CookieLimitsPolicy,
         'Connection': Connection,
         'ConnectionPool': ConnectionPool,
         'CSSScraper': CSSScraper,
         'DemuxDocumentScraper': DemuxDocumentScraper,
         'DemuxRecorder': DemuxRecorder,
         'DemuxURLFilter': DemuxURLFilter,
         'Engine': Engine,
         'HostConnectionPool': HostConnectionPool,
         'HTTPProxyServer': HTTPProxyServer,
         'HTMLScraper': HTMLScraper,
         'JavaScriptScraper': JavaScriptScraper,
         'OutputDocumentRecorder': OutputDocumentRecorder,
         'PathNamer': PathNamer,
         'PhantomJSClient': PhantomJSClient,
         'PhantomJSController': PhantomJSController,
         'PrintServerResponseRecorder': PrintServerResponseRecorder,
         'ProgressRecorder': ProgressRecorder,
         'RedirectTracker': RedirectTracker,
         'Request': Request,
         'Resolver': Resolver,
         'RichClient': RichClient,
         'RobotsTxtPool': RobotsTxtPool,
         'SitemapScraper': SitemapScraper,
         'Statistics': Statistics,
         'URLInfo': URLInfo,
         'URLTable': URLTable,
         'Waiter': LinearWaiter,
         'WARCRecorder': WARCRecorder,
         'WebProcessor': WebProcessor,
         'WebProcessorFetchParams': WebProcessorFetchParams,
         'WebProcessorInstances': WebProcessorInstances,
     })
     self._url_infos = tuple(self._build_input_urls())
     self._ca_certs_file = None
     self._file_log_handler = None
     self._console_log_handler = None
コード例 #3
0
    def test_factory(self):
        factory = Factory()
        factory.set('dict', dict)

        self.assertNotIn('dict', factory)

        self.assertFalse(factory.is_all_initialized())

        my_instance = factory.new('dict', [('hi', 'hello')])

        self.assertIn('dict', factory)
        self.assertEqual(my_instance, factory['dict'])
        self.assertTrue(factory.is_all_initialized())
        self.assertEqual(1, len(factory))
        self.assertEqual(['dict'], list(iter(factory)))
        self.assertEqual(my_instance, factory.instance_map['dict'])

        with self.assertRaises(ValueError):
            factory.new('dict', [('hi', 'hello')])