"""Unit tests: private_dirs""" import pytest @pytest.mark.parametrize( 'gnupghome', [True, False], ids=['gnupghome-set', 'gnupghome-unset'], ) @pytest.mark.parametrize('param', ['all', 'gnupg']) def test_relative_path(runner, paths, gnupghome, param): """Test translate_to_relative""" alt_gnupghome = 'alt/gnupghome' env_gnupghome = paths.work.join(alt_gnupghome) script = f""" YADM_TEST=1 source {paths.pgm} YADM_WORK={paths.work} private_dirs {param} """ env = {} if gnupghome: env['GNUPGHOME'] = env_gnupghome expected = alt_gnupghome if gnupghome else '.gnupg' if param == 'all': expected = f'.ssh {expected}' run = runner(command=['bash'], inp=script, env=env) assert run.success assert run.err == '' assert run.out.strip() == expected