def test_save(self): args = argument_parser.parse_args() config = gui_config.Configuration(args) save_info = {} save_info['font_color'] = 'orange' config.save_configuration(save_info) sys.argv[1:] = ["--config", "src/saved_config.yml"] os.remove("src/saved_config.yml") args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(config.font_color, "white")
def test_single_file(self): """Test for only file property of command line arguments""" sys.argv[1:] = ["--file", "some_file.json"] args = argument_parser.parse_args() self.assertEqual(args.file, ['some_file.json']) self.assertEqual(args.url, None) self.assertEqual(args.config, "")
def test_save_load(self): """ Tests that saved configurations are loaded again """ args = argument_parser.parse_args() config = gui_config.Configuration(args) config.font_color = 'black' save_info = {} save_info['font_color'] = config.font_color config.save_configuration(save_info) sys.argv[1:] = ["--config", "src/saved_config.yml"] args = argument_parser.parse_args() os.remove("src/saved_config.yml") config = gui_config.Configuration(args) self.assertEqual(config.font_color, "white")
def test_window_placement(self): """ Test GUI correctly loads saved config data for the window placement """ sys.argv[1:] = ["--config", "default_config.yml"] args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(str(config.window_placement), "800x50+0+25")
def test_time(self): """ Test GUI correctly loads saved config data for cycle time between feeds """ sys.argv[1:] = ["--config", "default_config.yml"] args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(config.time, 5000)
def test_font(self): """ Test GUI correctly loads saved config data for font style (family) """ sys.argv[1:] = ["--config", "default_config.yml"] args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(config.font_family, 'Helvetica')
def test_bg_color(self): """ Test GUI correctly loads saved config data for GUI background color """ sys.argv[1:] = ["--config", "default_config.yml"] args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(config.background_color, 'black')
def test_single_url(self): """Test for only url property of command line arguments""" test_check = "google.com" sys.argv[1:] = ["--url", test_check] args = argument_parser.parse_args() self.assertEqual(args.url, [test_check]) self.assertEqual(args.file, None) self.assertEqual(args.config, "")
def test_multiple_url(self): """Test for multiple url properties of command line arguments""" test_check1 = "google.com" test_check2 = "duckduckgo.com" sys.argv[1:] = ["--url", test_check1, test_check2] args = argument_parser.parse_args() self.assertEqual(args.url, [test_check1, test_check2]) self.assertEqual(args.file, None) self.assertEqual(args.config, "")
def test_single_config(self): """ Test for only configuration file property of command line arguments """ sys.argv[1:] = ["--config", "some_config.yaml"] args = argument_parser.parse_args() self.assertEqual(args.config, ['some_config.yaml']) self.assertEqual(args.url, None) self.assertEqual(args.file, None)
def test_can_change(self): """ Tests that the correct defaults are loaded if no .yml file is provided """ args = argument_parser.parse_args() config = gui_config.Configuration(args) config.font_color = 'black' config.background_color = 'white' self.assertEqual(config.font_color, "black") self.assertEqual(config.background_color, "white")
def test_urls_and_files(self): """ Test for multiple urls and file properties of command line arguments """ url_check1 = "google.com" url_check2 = "duckduckgo.com" file_check1 = "some_file.json" file_check2 = "another_file.json" sys.argv[1:] = [ "--url", url_check1, url_check2, "--file", file_check1, file_check2 ] args = argument_parser.parse_args() self.assertEqual(args.url, [url_check1, url_check2]) self.assertEqual(args.file, [file_check1, file_check2]) self.assertEqual(args.config, "")
def test_some_stuff(self): args = argument_parser.parse_args() args.config = ["default_config.yml"] config = gui_config.Configuration(args) self.assertEqual(config.font_color, 'white')
def test_font_size(self): """Test GUI correctly loads saved config data for font size""" sys.argv[1:] = ["--config", "default_config.yml"] args = argument_parser.parse_args() config = gui_config.Configuration(args) self.assertEqual(config.font_size, 15)
import yaml from src.argument_parser import parse_args import os args = parse_args() class Configuration: def make_defaults(self): """Defaults for GUI, fonts and test URL """ self.font_color = "black" self.font_size = 12 self.background_color = "white" self.urls = ["https://xkcd.com/atom.xml"] self.font_family = "Helvetica" self.time = 5000 self.window_placement = None def load_yaml(self): """Accesses user given .yml file to load saved configuration """ if args.config: config_file = args.config[0] # this should be in a try block to catch bad formatting with open(config_file) as f: self.conf_dict = yaml.load(f, Loader=yaml.FullLoader) else: entries = os.scandir('src/') use_this = "" for entry in entries: if entry.name == "saved_config.yml": use_this = entry
from src.argument_parser import parse_args # pragma: no cover import src.display as start # pragma: no cover args = parse_args() # pragma: no cover lumos = start.Display # pragma: no cover lumos().display(args) # pragma: no cover