def test_json_output_with_limit(self, args, res):
     """Tests --json argument and --limit"""
     parsed_arg = self.arg_parser.parse_args(args)
     select = reader.selection_from_url(self.soup)
     news, items = reader.collect_and_format_news(select, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         load = loads(buf.getvalue())
         self.assertEqual(len(load), res)
 def test_json_output(self):
     """Tests --json argument"""
     args = ['https://news.yahoo.com/rss', '--json', ]
     parsed_arg = self.arg_parser.parse_args(args)
     select = reader.selection_from_url(self.soup)
     news, items = reader.collect_and_format_news(select, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         loads(buf.getvalue())
 def test_default_output_with_limit(self, args, res):
     """Tests --limit argument"""
     parsed_arg = self.arg_parser.parse_args(args)
     select = reader.selection_from_url(self.soup)
     news, items = reader.collect_and_format_news(select, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         result_news_dates_and_links = findall('Date: .+\nLink: .+\n', buf.getvalue())
         self.assertEqual(len(result_news_dates_and_links), res)
Beispiel #4
0
 def test_json_news_no_limit(self, args, res):
     """Tests --date with --json with --limit"""
     parsed_arg = self.arg_parser.parse_args(args)
     storage = reader.selection_from_db(parsed_arg.date)
     news, items = reader.collect_and_format_news(storage, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.selection_from_db(parsed_arg.date)
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         load = loads(buf.getvalue())
         self.assertEqual(len(load), res)
Beispiel #5
0
 def test_news_limit(self, args, res):
     """Tests --date with limit"""
     parsed_arg = self.arg_parser.parse_args(args)
     storage = reader.selection_from_db(parsed_arg.date)
     news, items = reader.collect_and_format_news(storage, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.selection_from_db(parsed_arg.date)
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         result_news_dates_and_links = findall('Date: .+\nLink: .+\n',
                                               buf.getvalue())
         self.assertEqual(len(result_news_dates_and_links), res)
Beispiel #6
0
 def test_json_news(self):
     """Tests --date with --json printing"""
     args = [
         '--date=20210530',
         '--json',
     ]
     parsed_arg = self.arg_parser.parse_args(args)
     storage = reader.selection_from_db(parsed_arg.date)
     news, items = reader.collect_and_format_news(storage, parsed_arg)
     with StringIO() as buf, redirect_stdout(buf):
         reader.selection_from_db(parsed_arg.date)
         reader.print_news(parsed_arg.json, parsed_arg.colorize, news)
         loads(buf.getvalue())