def test_load_file_path(tmpdir): snapshot = qisrc.snapshot.Snapshot() snapshot.refs["foo"] = "d34db33f" snapshot_txt = tmpdir.join("snap.txt").strpath snapshot.dump(snapshot_txt) snapshot2 = qisrc.snapshot.Snapshot() snapshot2.load(snapshot_txt) assert snapshot2 == snapshot
def test_dump_load(tmpdir): snapshot = qisrc.snapshot.Snapshot() snapshot.refs["foo"] = "a42fb" snapshot.refs["bar"] = "bccad" snapshot_txt = tmpdir.join("snapshot.txt").strpath snapshot.dump(snapshot_txt) snapshot2 = qisrc.snapshot.Snapshot() snapshot2.load(snapshot_txt) assert snapshot2 == snapshot
def test_load_file_object(tmpdir): """ Test Load File Object """ snapshot = qisrc.snapshot.Snapshot() snapshot.refs["foo"] = "d34db33f" snapshot_txt = tmpdir.join("snap.txt").strpath snapshot.dump(snapshot_txt) snapshot2 = qisrc.snapshot.Snapshot() with open(snapshot_txt) as fp: snapshot2.load(fp) assert snapshot2 == snapshot
def test_always_fetch(git_worktree, git_server, tmpdir): foo_repo = git_server.create_repo("foo.git") git_worktree.clone_missing(foo_repo) foo_proj = git_worktree.get_git_project("foo") git_server.push_file("foo.git", "other.txt", "other change\n") foo_git = qisrc.git.Git(foo_proj.path) rc, remote_sha1 = foo_git.call("ls-remote", "origin", "refs/heads/master", raises=False) assert rc == 0 remote_sha1 = remote_sha1.split()[0] snapshot = qisrc.snapshot.Snapshot() snapshot.refs["foo"] = remote_sha1 snapshot_txt = tmpdir.join("snapshot.txt").strpath snapshot.dump(snapshot_txt) qisrc.snapshot.load_snapshot(git_worktree, snapshot_txt) _, local_sha1 = foo_git.call("rev-parse", "HEAD", raises=False) assert local_sha1 == remote_sha1
def test_always_fetch(git_worktree, git_server, tmpdir): """ Test Always Fetch """ foo_repo = git_server.create_repo("foo.git") git_worktree.clone_missing(foo_repo) foo_proj = git_worktree.get_git_project("foo") git_server.push_file("foo.git", "other.txt", "other change\n") foo_git = qisrc.git.Git(foo_proj.path) rc, remote_sha1 = foo_git.call("ls-remote", "origin", "refs/heads/master", raises=False) assert rc == 0 remote_sha1 = remote_sha1.split()[0] snapshot = qisrc.snapshot.Snapshot() snapshot.refs["foo"] = remote_sha1 snapshot_txt = tmpdir.join("snapshot.txt").strpath snapshot.dump(snapshot_txt) qisrc.snapshot.load_snapshot(git_worktree, snapshot_txt) _, local_sha1 = foo_git.call("rev-parse", "HEAD", raises=False) assert local_sha1 == remote_sha1