Esempio n. 1
0
def test_temporary_worktree(settings):
    repo = AddonGitRepository(1)

    output = _run_process('git worktree list', repo)
    assert output.startswith(repo.git_repository.path)

    with TemporaryWorktree(repo.git_repository) as worktree:
        assert worktree.temp_directory.startswith(settings.TMP_PATH)
        assert worktree.path == os.path.join(
            worktree.temp_directory, worktree.name)

        output = _run_process('git worktree list', repo)
        assert worktree.name in output

    # Test that it cleans up properly
    assert not os.path.exists(worktree.temp_directory)
    output = _run_process('git worktree list', repo)
    assert worktree.name not in output
Esempio n. 2
0
def test_temporary_worktree():
    repo = AddonGitRepository(1)

    env = {'GIT_DIR': repo.git_repository.path}

    output = subprocess.check_output('git worktree list', shell=True, env=env)
    assert output.startswith(repo.git_repository.path)

    with TemporaryWorktree(repo.git_repository) as worktree:
        assert worktree.temp_directory.startswith(settings.TMP_PATH)
        assert worktree.path == os.path.join(worktree.temp_directory,
                                             worktree.name)

        output = subprocess.check_output('git worktree list',
                                         shell=True,
                                         env=env)
        assert worktree.name in output

    # Test that it cleans up properly
    assert not os.path.exists(worktree.temp_directory)
    output = subprocess.check_output('git worktree list', shell=True, env=env)
    assert worktree.name not in output