Exemple #1
0
def test_fetch_ref():
    new_css = 'body { background-color: white; }'
    new_branch = 'new_css'
    local_repo1.new_branch(new_branch)
    revision = None
    with local_repo1.branch(new_branch):
        File(GIT_TEST_DIR1.child(CSS_FILE)).write(new_css)
        local_repo1.commit('Changed background-color')
        local_repo1.push()

        revision = local_repo1.get_revision(short=False)
        modified = local_repo1.get_last_committed()
        local_repo1.make_ref('refs/test/testref', revision)
        local_repo1.push(ref='refs/test/testref')
    GIT_TEST_DIR2.delete()
    local_repo2 = Tree(GIT_TEST_DIR2, GIT_REMOTE)
    local_repo2.fetch_ref('refs/test/testref', 'localrev')
    css = File(GIT_TEST_DIR2.child(CSS_FILE)).read_all()
    assert css == new_css
    assert local_repo2.get_revision(short=False) == revision
    assert local_repo2.get_last_committed() == modified