Ejemplo n.º 1
0
def can_update_repository_to_latest_version(vcs, target):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name, repo.working_directory)
        fetch(original_uri, target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
        
        add_commit_to_repo(repo)
        fetch(original_uri, target)
        assert_equal("Run away!", read_file(os.path.join(target, "README")))
Ejemplo n.º 2
0
def can_update_repository_to_specific_commit_using_hash_before_commit_name(vcs, target, commit):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name, repo.working_directory)
        add_commit_to_repo(repo)
        fetch(original_uri, target)
        assert_equal("Run away!", read_file(os.path.join(target, "README")))
        
        fetch("{0}#{1}".format(original_uri, commit), target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 3
0
def origin_is_prefixed_to_git_commit_if_necessary():
    with temporary_empty_dir() as target:
        with temporary_git_repo() as git_repo:
            original_uri = "git+file://" + git_repo.working_directory
            # master == origin/master
            fetch(original_uri, target)
            assert_equal("Run it.", read_file(os.path.join(target, "README")))
            
            add_commit_to_repo(git_repo)
            # If we checkout master rather than origin/master, we don't change revision
            fetch(original_uri + "#master", target)
            assert_equal("Run away!", read_file(os.path.join(target, "README")))
Ejemplo n.º 4
0
def origin_is_prefixed_to_git_commit_if_necessary():
    with temporary_empty_dir() as target:
        with temporary_git_repo() as git_repo:
            original_uri = "git+file://" + git_repo.working_directory
            # master == origin/master
            fetch(original_uri, target)
            assert_equal("Run it.", read_file(os.path.join(target, "README")))

            add_commit_to_repo(git_repo)
            # If we checkout master rather than origin/master, we don't change revision
            fetch(original_uri + "#master", target)
            assert_equal("Run away!", read_file(os.path.join(target,
                                                             "README")))
Ejemplo n.º 5
0
def can_use_cache_when_cloning_git_repository():
    with temporary_empty_dir() as target:
        with temporary_git_repo() as git_repo:
            original_uri = "git+file://" + git_repo.working_directory
            add_commit_to_repo(git_repo)
            fetch(original_uri + "#master^", target, use_cache=True)
            assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 6
0
def can_fetch_repo_without_vcs_files(vcs, target):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name,
                                               repo.working_directory)
        archive(original_uri, target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
        assert_false(os.path.exists(os.path.join(target, vcs.directory_name)))
Ejemplo n.º 7
0
def can_use_cache_when_cloning_git_repository():
    with temporary_empty_dir() as target:
        with temporary_git_repo() as git_repo:
            original_uri = "git+file://" + git_repo.working_directory
            add_commit_to_repo(git_repo)
            fetch(original_uri + "#master^", target, use_cache=True)
            assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 8
0
def can_clone_repository_to_specific_commit_using_hash_before_commit_name(
        vcs, target, commit):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name,
                                               repo.working_directory)
        add_commit_to_repo(repo)
        fetch("{0}#{1}".format(original_uri, commit), target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 9
0
def can_fetch_repository_into_new_directory(vcs, target):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name,
                                               repo.working_directory)
        fetch(original_uri, target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 10
0
def can_fetch_repository_into_new_directory(vcs, target):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name, repo.working_directory)
        fetch(original_uri, target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
Ejemplo n.º 11
0
def can_fetch_repo_without_vcs_files(vcs, target):
    with vcs.temporary_repo() as repo:
        original_uri = "{0}+file://{1}".format(vcs.name, repo.working_directory)
        archive(original_uri, target)
        assert_equal("Run it.", read_file(os.path.join(target, "README")))
        assert_false(os.path.exists(os.path.join(target, vcs.directory_name)))