本文整理匯總了Python中qisrc.test.conftest.TestGit類的典型用法代碼示例。如果您正苦於以下問題:Python TestGit類的具體用法?Python TestGit怎麽用?Python TestGit使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了TestGit類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: test_when_ahead
def test_when_ahead(git_server, qisrc_action):
git_server.create_repo("foo")
git_server.switch_manifest_branch("devel")
git_server.change_branch("foo", "devel")
qisrc_action("init", git_server.manifest_url, "--branch", "devel")
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
git = TestGit(foo_proj.path)
git.commit_file("devel.txt", "devel")
git.push()
qisrc_action("rebase", "--all")
示例2: test_publish_changes
def test_publish_changes(qisrc_action, git_server):
foo_repo = git_server.create_repo("foo.git", review=True)
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
foo_git = TestGit(foo_proj.path)
foo_git.commit_file("a.txt", "a")
qisrc_action("push", "foo")
_, sha1 = foo_git.call("log", "-1", "--pretty=%H", raises=False)
(_, remote) = foo_git.call("ls-remote", "gerrit", "refs/for/master", raises=False)
assert remote == "%s\trefs/for/master" % sha1
示例3: test_not_under_code_review
def test_not_under_code_review(qisrc_action, git_server):
foo_repo = git_server.create_repo("foo.git")
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
foo_git = TestGit(foo_proj.path)
foo_git.commit_file("a.txt", "a")
qisrc_action("push", "foo")
_, sha1 = foo_git.call("log", "-1", "--pretty=%H", raises=False)
(_, remote) = foo_git.call("ls-remote", "origin", "master", raises=False)
assert remote == "%s\trefs/heads/master" % sha1
示例4: test_skip_when_not_on_correct_branch
def test_skip_when_not_on_correct_branch(git_server, qisrc_action, record_messages):
git_server.create_repo("foo")
git_server.switch_manifest_branch("devel")
git_server.change_branch("foo", "devel")
qisrc_action("init", git_server.manifest_url, "--branch", "devel")
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
git = TestGit(foo_proj.path)
git.checkout("-B", "perso")
qisrc_action("rebase", "--branch", "master", "--all")
assert record_messages.find("skipped")
示例5: test_reset_undo_local_changes
def test_reset_undo_local_changes(qisrc_action, git_server):
git_server.create_repo("foo")
manifest_url = git_server.manifest_url
qisrc_action("init", manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
foo_git = TestGit(foo_proj.path)
orig_gitinore = foo_git.read_file(".gitignore")
foo_git.root.join(".gitignore").write("new line\n")
qisrc_action("reset", "--force")
assert foo_git.read_file(".gitignore") == orig_gitinore
示例6: test_copy_git_src
def test_copy_git_src(tmpdir):
src = tmpdir.mkdir("src")
dest = tmpdir.mkdir("dest")
foo_src = src.mkdir("foo")
foo_git = TestGit(foo_src.strpath)
foo_git.initialize()
foo_git.commit_file("a.txt", "a\n")
foo_git.commit_file("b.txt", "a\n")
foo_src.ensure("c.txt", file=True)
qisys.sh.copy_git_src(foo_src.strpath, dest.strpath)
assert dest.join("a.txt").check(file=True)
assert not dest.join("c.txt").check(file=True)
示例7: test_sync_dash_g
def test_sync_dash_g(qisrc_action, git_server):
git_server.create_group("mygroup", ["a", "b"])
git_server.create_repo("other")
git_server.push_file("other", "other.txt", "change 1")
qisrc_action("init", git_server.manifest_url)
git_server.push_file("other", "other.txt", "change 2")
qisrc_action("sync", "--group", "mygroup")
git_worktree = TestGitWorkTree()
other_proj = git_worktree.get_git_project("other")
other_git = TestGit(other_proj.path)
assert other_git.read_file("other.txt") == "change 1"
示例8: test_incorrect_branch_still_fetches
def test_incorrect_branch_still_fetches(qisrc_action, git_server):
git_server.create_repo("foo.git")
qisrc_action("init", git_server.manifest_url)
qisrc_action("sync")
git_worktree = TestGitWorkTree()
foo = git_worktree.get_git_project("foo")
test_git = TestGit(foo.path)
test_git.checkout("-b", "wip")
git_server.push_file("foo.git", "foo.txt", "some change")
previous_sha1 = test_git.get_ref_sha1("refs/remotes/origin/master")
foo.sync()
new_sha1 = test_git.get_ref_sha1("refs/remotes/origin/master")
assert previous_sha1 != new_sha1
示例9: test_using_carbon_copy
def test_using_carbon_copy(qisrc_action, git_server):
foo_repo = git_server.create_repo("foo.git", review=True)
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
foo_git = TestGit(foo_proj.path)
# Need to fetch gerrit remote at least once for gerrit/master to exist
foo_git.fetch("--all")
foo_git.commit_file("a.txt", "a")
with mock.patch.object(qisys.command, "call") as mocked_call:
qisrc_action("push", "foo", "--cc", "jdoe")
set_reviewers_args = mocked_call.call_args_list[2][0][0][7]
assert "jdoe" in set_reviewers_args
示例10: test_keeps_staged_changes
def test_keeps_staged_changes(qisrc_action, git_server):
git_server.create_repo("foo.git")
qisrc_action("init", git_server.manifest_url)
qisrc_action("sync")
git_worktree = TestGitWorkTree()
foo = git_worktree.get_git_project("foo")
test_git = TestGit(foo.path)
staged_file = os.path.join(foo.path, "staged")
with open(staged_file, "w") as f:
f.write("I'm going to stage stuff")
test_git.add(staged_file)
foo.sync()
assert os.path.exists(staged_file)
示例11: test_fixed_ref
def test_fixed_ref(qisrc_action, git_server):
""" Test Fixed Ref """
git_server.create_repo("foo.git")
git_server.push_tag("foo.git", "v0.1")
git_server.set_fixed_ref("foo.git", "v0.1")
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
git = TestGit(foo_proj.path)
git.commit_file("a.txt", "a", "test")
qisrc_action("reset")
_, actual = git.call("rev-parse", "HEAD", raises=False)
_, expected = git.call("rev-parse", "v0.1", raises=False)
assert actual == expected
示例12: test_alert_maintainers
def test_alert_maintainers(qisrc_action, git_server):
foo_repo = git_server.create_repo("foo.git", review=True)
qiproject_xml = """\
<project version="3">
<maintainer email="[email protected]">John Doe</maintainer>
</project>"""
git_server.push_file("foo.git", "qiproject.xml", qiproject_xml)
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
foo_proj = git_worktree.get_git_project("foo")
foo_git = TestGit(foo_proj.path)
# Need to fetch gerrit remote at least once for gerrit/master to exist
foo_git.fetch("--all")
foo_git.commit_file("a.txt", "a")
with mock.patch.object(qisys.command, "call") as mocked_call:
qisrc_action("push", "foo")
set_reviewers_args = mocked_call.call_args_list[3][0][0][7]
assert "[email protected]" in set_reviewers_args
示例13: test_sync_reset
def test_sync_reset(qisrc_action, git_server):
""" Test Sync Reset """
git_server.create_repo("bar")
git_server.create_repo("baz")
qisrc_action("init", git_server.manifest_url)
git_worktree = TestGitWorkTree()
bar_proj = git_worktree.get_git_project("bar")
baz_proj = git_worktree.get_git_project("baz")
bar_git = TestGit(bar_proj.path)
baz_git = TestGit(baz_proj.path)
bar_git.checkout("-B", "devel")
baz_git.commit_file("unrelated.txt", "unrelated\n")
git_server.push_file("bar", "bar.txt", "this is bar\n")
qisrc_action("sync", "--reset")
assert bar_git.get_current_branch() == "master"
assert bar_git.read_file("bar.txt") == "this is bar\n"
with pytest.raises(Exception):
baz_git.read_file("unrelated.txt")
示例14: test_sync_branch_devel_unclean
def test_sync_branch_devel_unclean(qisrc_action, git_server, test_git):
""" Test Sync Branch Devel UnClean """
# Case where the worktree isn't clean
git_server.create_repo("foo.git")
qisrc_action("init", git_server.manifest_url)
git_server.push_file("foo.git", "foo.txt", "a super change")
git_server.push_file("foo.git", "bar.txt", "a super bugfix")
git_worktree = TestGitWorkTree()
foo1 = git_worktree.get_git_project("foo")
test_git = TestGit(foo1.path)
test_git.call("checkout", "-b", "devel")
test_git.commit_file("developing.txt", "like a boss")
git_server.push_file("foo.git", "foobar.txt", "some other change")
wip_txt = os.path.join(foo1.path, "wip.txt")
open(wip_txt, 'w').close()
qisys.script.run_action("qisrc.actions.sync", ["--rebase-devel"])
# Master has been fast-forwarded and I haven't lost my WIP
assert os.path.exists(wip_txt)
示例15: test_ignores_env
def test_ignores_env(tmpdir, monkeypatch):
repo1 = tmpdir.mkdir("repo1")
repo2 = tmpdir.mkdir("repo2")
git1 = TestGit(repo1.strpath)
git2 = TestGit(repo2.strpath)
git1.initialize()
git2.initialize()
untracked = repo1.join("untracked")
untracked.ensure(file=True)
monkeypatch.setenv("GIT_DIR", repo1.join(".git").strpath)
monkeypatch.setenv("GIT_WORK_TREE", repo1.strpath)
git2.call("clean", "--force")
assert untracked.check(file=1)