mirror of
https://github.com/deadc0de6/dotdrop.git
synced 2026-02-16 03:46:10 +00:00
more tests
This commit is contained in:
@@ -117,7 +117,7 @@ def create_dir(path):
|
|||||||
|
|
||||||
def _fake_args():
|
def _fake_args():
|
||||||
args = {}
|
args = {}
|
||||||
args['--verbose'] = False
|
args['--verbose'] = True
|
||||||
args['--no-banner'] = False
|
args['--no-banner'] = False
|
||||||
args['--dry'] = False
|
args['--dry'] = False
|
||||||
args['--force'] = False
|
args['--force'] = False
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import os
|
|||||||
import unittest
|
import unittest
|
||||||
from unittest.mock import patch
|
from unittest.mock import patch
|
||||||
from dotdrop.options import Options, Logger
|
from dotdrop.options import Options, Logger
|
||||||
|
from dotdrop.exceptions import YamlException
|
||||||
|
|
||||||
|
|
||||||
class FakeOptions(Options):
|
class FakeOptions(Options):
|
||||||
@@ -101,8 +102,6 @@ class TestOptions(unittest.TestCase):
|
|||||||
home = os.path.expanduser('~/.config')
|
home = os.path.expanduser('~/.config')
|
||||||
expected = f'{home}/dotdrop/config.yaml'
|
expected = f'{home}/dotdrop/config.yaml'
|
||||||
mock_exists.side_effect = side_effect(valid=expected)
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
log = Logger(debug=True)
|
|
||||||
log.dbg(f'expected: {expected}')
|
|
||||||
args = get_args({'--cfg': ''})
|
args = get_args({'--cfg': ''})
|
||||||
os.environ['XDG_CONFIG_HOME'] = home
|
os.environ['XDG_CONFIG_HOME'] = home
|
||||||
fake = FakeOptions(args)
|
fake = FakeOptions(args)
|
||||||
@@ -115,52 +114,121 @@ class TestOptions(unittest.TestCase):
|
|||||||
home = os.path.expanduser('~/.config')
|
home = os.path.expanduser('~/.config')
|
||||||
expected = f'{home}/dotdrop/config.toml'
|
expected = f'{home}/dotdrop/config.toml'
|
||||||
mock_exists.side_effect = side_effect(valid=expected)
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
log = Logger(debug=True)
|
|
||||||
log.dbg(f'expected: {expected}')
|
|
||||||
args = get_args({'--cfg': ''})
|
args = get_args({'--cfg': ''})
|
||||||
os.environ['XDG_CONFIG_HOME'] = home
|
os.environ['XDG_CONFIG_HOME'] = home
|
||||||
fake = FakeOptions(args)
|
fake = FakeOptions(args)
|
||||||
self.assertEqual(fake._get_config_path(), expected)
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
@patch('os.path.exists')
|
@patch('os.path.exists')
|
||||||
def test_get_path_fs_yaml(self, mock_exists):
|
def test_get_path_fs_xdg_yaml(self, mock_exists):
|
||||||
"""from fs yaml"""
|
"""from fs yaml"""
|
||||||
clean_setup()
|
clean_setup()
|
||||||
home = os.path.expanduser('~/.config')
|
home = os.path.expanduser('~/.config')
|
||||||
expected = f'{home}/dotdrop/config.toml'
|
expected = f'{home}/dotdrop/config.yaml'
|
||||||
mock_exists.side_effect = side_effect(valid=expected)
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
log = Logger(debug=True)
|
|
||||||
log.dbg(f'expected: {expected}')
|
|
||||||
args = get_args({'--cfg': ''})
|
args = get_args({'--cfg': ''})
|
||||||
fake = FakeOptions(args)
|
fake = FakeOptions(args)
|
||||||
self.assertEqual(fake._get_config_path(), expected)
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
@patch('os.path.exists')
|
@patch('os.path.exists')
|
||||||
def test_get_path_fs_xdg(self, mock_exists):
|
def test_get_path_fs_xdg_etc_yaml(self, mock_exists):
|
||||||
|
"""from fs xdg"""
|
||||||
|
clean_setup()
|
||||||
|
home = os.path.expanduser('/etc/xdg')
|
||||||
|
expected = f'{home}/dotdrop/config.yaml'
|
||||||
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
|
args = get_args({'--cfg': ''})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_fs_etc_dotdrop_yaml(self, mock_exists):
|
||||||
|
"""from fs etc"""
|
||||||
|
clean_setup()
|
||||||
|
home = os.path.expanduser('/etc')
|
||||||
|
expected = f'{home}/dotdrop/config.yaml'
|
||||||
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
|
args = get_args({'--cfg': ''})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_fs_etc_xdg_yaml(self, mock_exists):
|
||||||
|
"""from fs etc/xdg"""
|
||||||
|
clean_setup()
|
||||||
|
home = os.path.expanduser('/etc/xdg')
|
||||||
|
expected = f'{home}/dotdrop/config.yaml'
|
||||||
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
|
args = get_args({'--cfg': ''})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_fs_xdg_toml(self, mock_exists):
|
||||||
|
"""from fs toml"""
|
||||||
|
clean_setup()
|
||||||
|
home = os.path.expanduser('~/.config')
|
||||||
|
expected = f'{home}/dotdrop/config.toml'
|
||||||
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
|
args = get_args({'--cfg': ''})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_fs_xdg_etc_toml(self, mock_exists):
|
||||||
"""from fs xdg"""
|
"""from fs xdg"""
|
||||||
clean_setup()
|
clean_setup()
|
||||||
home = os.path.expanduser('/etc/xdg')
|
home = os.path.expanduser('/etc/xdg')
|
||||||
expected = f'{home}/dotdrop/config.toml'
|
expected = f'{home}/dotdrop/config.toml'
|
||||||
mock_exists.side_effect = side_effect(valid=expected)
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
log = Logger(debug=True)
|
|
||||||
log.dbg(f'expected: {expected}')
|
|
||||||
args = get_args({'--cfg': ''})
|
args = get_args({'--cfg': ''})
|
||||||
fake = FakeOptions(args)
|
fake = FakeOptions(args)
|
||||||
self.assertEqual(fake._get_config_path(), expected)
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
@patch('os.path.exists')
|
@patch('os.path.exists')
|
||||||
def test_get_path_fs_etc(self, mock_exists):
|
def test_get_path_fs_etc_dotdrop_toml(self, mock_exists):
|
||||||
"""from fs etc"""
|
"""from fs etc"""
|
||||||
clean_setup()
|
clean_setup()
|
||||||
home = os.path.expanduser('/etc')
|
home = os.path.expanduser('/etc')
|
||||||
expected = f'{home}/dotdrop/config.toml'
|
expected = f'{home}/dotdrop/config.toml'
|
||||||
mock_exists.side_effect = side_effect(valid=expected)
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
log = Logger(debug=True)
|
|
||||||
log.dbg(f'expected: {expected}')
|
|
||||||
args = get_args({'--cfg': ''})
|
args = get_args({'--cfg': ''})
|
||||||
fake = FakeOptions(args)
|
fake = FakeOptions(args)
|
||||||
self.assertEqual(fake._get_config_path(), expected)
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_fs_etc_xdg_toml(self, mock_exists):
|
||||||
|
"""from fs etc/xdg"""
|
||||||
|
clean_setup()
|
||||||
|
home = os.path.expanduser('/etc/xdg')
|
||||||
|
expected = f'{home}/dotdrop/config.toml'
|
||||||
|
mock_exists.side_effect = side_effect(valid=expected)
|
||||||
|
args = get_args({'--cfg': ''})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(fake._get_config_path(), expected)
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_get_path_none(self, mock_exists):
|
||||||
|
"""path is none"""
|
||||||
|
clean_setup()
|
||||||
|
mock_exists.return_value = False
|
||||||
|
args = get_args({})
|
||||||
|
fake = FakeOptions(args)
|
||||||
|
self.assertEqual(None, fake._get_config_path())
|
||||||
|
|
||||||
|
@patch('os.path.exists')
|
||||||
|
def test_options_debug(self, mock_exists):
|
||||||
|
"""test debug"""
|
||||||
|
mock_exists.return_value = False
|
||||||
|
args = {
|
||||||
|
'--verbose': True,
|
||||||
|
'--dry': False,
|
||||||
|
'--cfg': 'path',
|
||||||
|
'--profile': 'profile',
|
||||||
|
}
|
||||||
|
with self.assertRaises(YamlException):
|
||||||
|
Options(args)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""entry point"""
|
"""entry point"""
|
||||||
|
|||||||
@@ -52,6 +52,25 @@ class TestConfig(SubsetTestCase):
|
|||||||
self.assertTrue(dpath == self.CONFIG_DOTPATH)
|
self.assertTrue(dpath == self.CONFIG_DOTPATH)
|
||||||
self.assertTrue(conf.dump() != '')
|
self.assertTrue(conf.dump() != '')
|
||||||
|
|
||||||
|
def test_raises(self):
|
||||||
|
"""test raises on not existing path"""
|
||||||
|
with self.assertRaises(YamlException):
|
||||||
|
Cfg('path', debug=True)
|
||||||
|
|
||||||
|
def test_resolve_link(self):
|
||||||
|
"""test bad link value"""
|
||||||
|
tmp = get_tempdir()
|
||||||
|
self.assertTrue(os.path.exists(tmp))
|
||||||
|
self.addCleanup(clean, tmp)
|
||||||
|
confpath = create_fake_config(tmp,
|
||||||
|
configname=self.CONFIG_NAME,
|
||||||
|
dotpath=self.CONFIG_DOTPATH,
|
||||||
|
backup=self.CONFIG_BACKUP,
|
||||||
|
create=self.CONFIG_CREATE)
|
||||||
|
cfg = Cfg(confpath, debug=True)
|
||||||
|
with self.assertRaises(YamlException):
|
||||||
|
cfg._resolve_dotfile_link('fake')
|
||||||
|
|
||||||
def test_def_link(self):
|
def test_def_link(self):
|
||||||
"""unittest"""
|
"""unittest"""
|
||||||
# pylint: disable=E1120
|
# pylint: disable=E1120
|
||||||
|
|||||||
Reference in New Issue
Block a user