1
0
mirror of https://github.com/deadc0de6/dotdrop.git synced 2026-02-04 18:34:48 +00:00
Files
dotdrop/tests/test_listings.py
deadc0de6 f6dbdad63d linting
2023-02-06 17:30:29 +01:00

107 lines
3.2 KiB
Python

"""
author: deadc0de6 (https://github.com/deadc0de6)
Copyright (c) 2017, deadc0de6
basic unittest for the compare function
"""
import unittest
import os
from dotdrop.dotdrop import cmd_list_profiles
from dotdrop.dotdrop import cmd_files
from dotdrop.dotdrop import cmd_detail
from dotdrop.dotdrop import cmd_importer
from tests.helpers import create_dir, get_string, get_tempdir, \
create_random_file, load_options, \
create_fake_config, clean
class TestListings(unittest.TestCase):
"""listing test"""
CONFIG_BACKUP = False
CONFIG_CREATE = True
CONFIG_DOTPATH = 'dotfiles'
CONFIG_NAME = 'config.yaml'
def test_listings(self):
"""Test the compare function"""
# setup some directories
fold_config = os.path.join(os.path.expanduser('~'), '.config')
create_dir(fold_config)
fold_subcfg = os.path.join(os.path.expanduser('~'), '.config',
get_string(5))
create_dir(fold_subcfg)
self.addCleanup(clean, fold_subcfg)
fold_tmp = get_tempdir()
create_dir(fold_tmp)
self.addCleanup(clean, fold_tmp)
# create the directories
tmp = get_tempdir()
self.assertTrue(os.path.exists(tmp))
self.addCleanup(clean, tmp)
dotfilespath = get_tempdir()
self.assertTrue(os.path.exists(dotfilespath))
self.addCleanup(clean, dotfilespath)
# create the dotfiles to test
file1, _ = create_random_file(fold_config)
self.assertTrue(os.path.exists(file1))
self.addCleanup(clean, file1)
file2, _ = create_random_file(fold_subcfg)
self.assertTrue(os.path.exists(file2))
self.addCleanup(clean, file2)
file3, _ = create_random_file(fold_tmp)
self.assertTrue(os.path.exists(file3))
self.addCleanup(clean, file3)
file4, _ = create_random_file(fold_tmp, binary=True)
self.assertTrue(os.path.exists(file4))
self.addCleanup(clean, file4)
file5 = get_tempdir()
self.assertTrue(os.path.exists(file5))
self.addCleanup(clean, file5)
file6, _ = create_random_file(file5)
self.assertTrue(os.path.exists(file6))
# create the config file
profile = get_string(5)
confpath = create_fake_config(dotfilespath,
configname=self.CONFIG_NAME,
dotpath=self.CONFIG_DOTPATH,
backup=self.CONFIG_BACKUP,
create=self.CONFIG_CREATE)
self.assertTrue(os.path.exists(confpath))
opt = load_options(confpath, profile)
dfiles = [file1, file2, file3, file4, file5]
# import the files
opt.import_path = dfiles
cmd_importer(opt)
opt = load_options(confpath, profile)
# files
cmd_list_profiles(opt)
# list files
opt.files_templateonly = False
cmd_files(opt)
opt.files_templateonly = True
cmd_files(opt)
# details
opt.detail_keys = None
cmd_detail(opt)
def main():
"""entry point"""
unittest.main()
if __name__ == '__main__':
main()