Example #1
0
 def test_output_and_overwrite_output(self):
     with self.assertRaises(UsageError):
         feed_process_params_from_cli(
             Settings(),
             ['output1.json'],
             None,
             ['output2.json'],
         )
Example #2
0
 def test_feed_export_config_backward_compatible(self):
     with warnings.catch_warnings(record=True) as cw:
         settings = Settings()
         self.assertEqual({'items.dat': {
             'format': 'csv'
         }}, feed_process_params_from_cli(settings, ['items.dat'], 'csv'))
         self.assertEqual(cw[0].category, ScrapyDeprecationWarning)
Example #3
0
 def test_feed_export_config_stdout(self):
     settings = Settings()
     self.assertEqual(
         {"stdout:": {
             "format": "pickle"
         }},
         feed_process_params_from_cli(settings, ["-:pickle"]),
     )
Example #4
0
 def test_feed_export_config_overwrite(self):
     settings = Settings()
     self.assertEqual(
         {'output.json': {
             'format': 'json',
             'overwrite': True
         }},
         feed_process_params_from_cli(settings, [], None, ['output.json']))
Example #5
0
 def process_options(self, args, opts):
     ScrapyCommand.process_options(self, args, opts)
     try:
         opts.spargs = arglist_to_dict(opts.spargs)
     except ValueError:
         raise UsageError("Invalid -a value, use -a NAME=VALUE", print_help=False)
     if opts.output:
         feeds = feed_process_params_from_cli(self.settings, opts.output, opts.output_format)
         self.settings.set('FEEDS', feeds, priority='cmdline')
Example #6
0
 def test_feed_export_config_backward_compatible(self):
     with warnings.catch_warnings(record=True) as cw:
         settings = Settings()
         self.assertEqual(
             {"items.dat": {
                 "format": "csv"
             }},
             feed_process_params_from_cli(settings, ["items.dat"], "csv"),
         )
         self.assertEqual(cw[0].category, ScrapyDeprecationWarning)
Example #7
0
 def test_feed_export_config_implicit_formats(self):
     settings = Settings()
     self.assertEqual(
         {
             'items_1.json': {
                 'format': 'json'
             },
             'items_2.xml': {
                 'format': 'xml'
             },
             'items_3.csv': {
                 'format': 'csv'
             }
         },
         feed_process_params_from_cli(
             settings, ['items_1.json', 'items_2.xml', 'items_3.csv']))
Example #8
0
 def test_feed_export_config_implicit_formats(self):
     settings = Settings()
     self.assertEqual(
         {
             "items_1.json": {
                 "format": "json"
             },
             "items_2.xml": {
                 "format": "xml"
             },
             "items_3.csv": {
                 "format": "csv"
             },
         },
         feed_process_params_from_cli(
             settings, ["items_1.json", "items_2.xml", "items_3.csv"]),
     )
Example #9
0
 def test_feed_export_config_stdout(self):
     settings = Settings()
     self.assertEqual({'stdout:': {
         'format': 'pickle'
     }}, feed_process_params_from_cli(settings, ['-:pickle']))