2021-03-11 13:43:26 +13:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
# coding=utf-8
|
|
|
|
|
|
|
|
from unittest.mock import MagicMock
|
|
|
|
|
|
|
|
import pytest
|
|
|
|
|
2021-04-12 19:58:32 +12:00
|
|
|
from bdfr.configuration import Configuration
|
2021-03-11 13:43:26 +13:00
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.parametrize('arg_dict', (
|
|
|
|
{'directory': 'test_dir'},
|
2021-04-04 05:25:58 +12:00
|
|
|
{
|
|
|
|
'directory': 'test_dir',
|
|
|
|
'no_dupes': True,
|
|
|
|
},
|
2021-03-11 13:43:26 +13:00
|
|
|
))
|
|
|
|
def test_process_click_context(arg_dict: dict):
|
|
|
|
test_config = Configuration()
|
|
|
|
test_context = MagicMock()
|
|
|
|
test_context.params = arg_dict
|
|
|
|
test_config.process_click_arguments(test_context)
|
|
|
|
test_config = vars(test_config)
|
|
|
|
assert all([test_config[arg] == arg_dict[arg] for arg in arg_dict.keys()])
|
2022-07-22 19:31:08 +12:00
|
|
|
|
|
|
|
|
|
|
|
def test_yaml_file_read():
|
|
|
|
file = './yaml_test_configuration.yaml'
|
|
|
|
test_config = Configuration()
|
|
|
|
test_config.parse_yaml_options(file)
|
|
|
|
assert test_config.subreddit == ['EarthPorn', 'TwoXChromosomes', 'Mindustry']
|
|
|
|
assert test_config.sort == 'new'
|
|
|
|
assert test_config.limit == 10
|