def test_get_spider_settings(self):
        bool_json_csv = [
            (True, True),
            (True, False),
            (False, True),
            (False, False)
        ]

        for item in bool_json_csv:
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'), pipelines)

            # test if global settings are appeneded to spider settings 
            test_flask_config['SCRAPY_SETTINGS']['ITEM_PIPELINES'] = {
                'apple': 100,
                'batman': 200
            }
            pipelines.update(test_flask_config['SCRAPY_SETTINGS']['ITEM_PIPELINES'])
            settings = get_spider_settings(test_flask_config, {})
            self.assertEquals(settings['ITEM_PIPELINES'], pipelines)

            # test if spider settings have priority over scrapy settings
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            spider_settings = {
                'ITEM_PIPELINES': {
                    'arachne.pipelines.ExportJSON': 300,
                    'arachne.pipelines.ExportCSV': 400,
                }
            }
            settings = get_spider_settings(test_flask_config, spider_settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'), spider_settings['ITEM_PIPELINES'])
Example #2
0
    def test_get_spider_settings(self):
        bool_json_csv = [(True, True), (True, False), (False, True),
                         (False, False)]

        for item in bool_json_csv:
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'), pipelines)

            # test if global settings are appeneded to spider settings
            test_flask_config['SCRAPY_SETTINGS']['ITEM_PIPELINES'] = {
                'apple': 100,
                'batman': 200
            }
            pipelines.update(
                test_flask_config['SCRAPY_SETTINGS']['ITEM_PIPELINES'])
            settings = get_spider_settings(test_flask_config, {})
            self.assertEquals(settings['ITEM_PIPELINES'], pipelines)

            # test if spider settings have priority over scrapy settings
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            spider_settings = {
                'ITEM_PIPELINES': {
                    'arachne.pipelines.ExportJSON': 300,
                    'arachne.pipelines.ExportCSV': 400,
                }
            }
            settings = get_spider_settings(test_flask_config, spider_settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'),
                              spider_settings['ITEM_PIPELINES'])
    def test_get_spider_settings(self):
        bool_json_csv = [(True, True), (True, False), (False, True),
                         (False, False)]

        for item in bool_json_csv:
            test_flask_config = get_flask_export_config(item[0], item[1])
            extensions = get_item_export_extension(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('EXTENSIONS'), extensions)

            # test if global settings are appeneded to spider settings
            test_flask_config['SCRAPY_SETTINGS']['EXTENSIONS'] = {
                'apple': 100,
                'batman': 200
            }
            extensions.update(
                test_flask_config['SCRAPY_SETTINGS']['EXTENSIONS'])
            settings = get_spider_settings(test_flask_config, {})
            self.assertEquals(settings['EXTENSIONS'], extensions)

            # test if spider settings have priority over scrapy settings
            test_flask_config = get_flask_export_config(item[0], item[1])
            extensions = get_item_export_extension(item[0], item[1])
            spider_settings = {
                'EXTENSIONS': {
                    'arachne.extensions.ExportJSON': 300,
                    'arachne.extensions.ExportCSV': 400,
                }
            }
            settings = get_spider_settings(test_flask_config, spider_settings)
            self.assertEquals(settings.get('EXTENSIONS'),
                              spider_settings['EXTENSIONS'])
Example #4
0
    def test_get_spider_settings(self):
        bool_json_csv = [(True, True), (True, False), (False, True),
                         (False, False)]

        for item in bool_json_csv:
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'), pipelines)
Example #5
0
    def test_get_spider_settings(self):
        bool_json_csv = [
            (True, True),
            (True, False),
            (False, True),
            (False, False)
        ]

        for item in bool_json_csv:
            test_flask_config = self.get_flask_export_config(item[0], item[1])
            pipelines = self.get_item_export_pipeline(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('ITEM_PIPELINES'), pipelines)
Example #6
0
    def test_get_spider_settings(self):
        bool_json_csv = [
            (True, True),
            (True, False),
            (False, True),
            (False, False)
        ]

        for item in bool_json_csv:
            test_flask_config = get_flask_export_config(item[0], item[1])
            extensions = get_item_export_extension(item[0], item[1])
            settings = get_spider_settings(test_flask_config, {})
            self.assertIsInstance(settings, Settings)
            self.assertEquals(settings.get('EXTENSIONS'), extensions)

            # test if global settings are appeneded to spider settings 
            test_flask_config['SCRAPY_SETTINGS']['EXTENSIONS'] = {
                'apple': 100,
                'batman': 200
            }
            extensions.update(
                test_flask_config['SCRAPY_SETTINGS']['EXTENSIONS'])
            settings = get_spider_settings(test_flask_config, {})
            self.assertEquals(settings['EXTENSIONS'], extensions)

            # test if spider settings have priority over scrapy settings
            test_flask_config = get_flask_export_config(item[0], item[1])
            extensions = get_item_export_extension(item[0], item[1])
            spider_settings = {
                'EXTENSIONS': {
                    'arachne.extensions.ExportJSON': 300,
                    'arachne.extensions.ExportCSV': 400,
                }
            }
            settings = get_spider_settings(test_flask_config, spider_settings)
            self.assertEquals(settings.get('EXTENSIONS'), 
                              spider_settings['EXTENSIONS'])