mirror of
https://github.com/rust-lang/cargo.git
synced 2025-10-01 11:30:39 +00:00
test(git): Make test backend clearer
This commit is contained in:
parent
4e3e353978
commit
cade73a7a0
@ -4,22 +4,27 @@ use cargo_test_support::{basic_manifest, git, paths, project};
|
|||||||
|
|
||||||
use crate::git_gc::find_index;
|
use crate::git_gc::find_index;
|
||||||
|
|
||||||
|
enum Backend {
|
||||||
|
Git2,
|
||||||
|
Gitoxide,
|
||||||
|
}
|
||||||
|
|
||||||
enum RepoMode {
|
enum RepoMode {
|
||||||
Shallow,
|
Shallow,
|
||||||
Complete,
|
Complete,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cargo_test]
|
#[cargo_test]
|
||||||
fn gitoxide_clones_shallow_two_revs_same_deps() {
|
fn gitoxide_fetch_shallow_two_revs_same_deps() {
|
||||||
perform_two_revs_same_deps(RepoMode::Shallow)
|
fetch_two_revs_same_deps(Backend::Gitoxide, RepoMode::Shallow)
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cargo_test]
|
#[cargo_test]
|
||||||
fn two_revs_same_deps() {
|
fn git2_fetch_complete_two_revs_same_deps() {
|
||||||
perform_two_revs_same_deps(RepoMode::Complete)
|
fetch_two_revs_same_deps(Backend::Git2, RepoMode::Complete)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn perform_two_revs_same_deps(mode: RepoMode) {
|
fn fetch_two_revs_same_deps(backend: Backend, mode: RepoMode) {
|
||||||
let bar = git::new("meta-dep", |project| {
|
let bar = git::new("meta-dep", |project| {
|
||||||
project
|
project
|
||||||
.file("Cargo.toml", &basic_manifest("bar", "0.0.0"))
|
.file("Cargo.toml", &basic_manifest("bar", "0.0.0"))
|
||||||
@ -97,12 +102,18 @@ fn perform_two_revs_same_deps(mode: RepoMode) {
|
|||||||
)
|
)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
let backend_args = match backend {
|
||||||
|
Backend::Git2 => "",
|
||||||
|
Backend::Gitoxide => "-Zgitoxide=fetch",
|
||||||
|
};
|
||||||
let mode_args = match mode {
|
let mode_args = match mode {
|
||||||
RepoMode::Complete => "",
|
RepoMode::Complete => "",
|
||||||
RepoMode::Shallow => "-Zgitoxide=fetch -Zgit=shallow-deps",
|
RepoMode::Shallow => "-Zgit=shallow-deps",
|
||||||
};
|
};
|
||||||
foo.cargo("check -v")
|
foo.cargo("check -v")
|
||||||
|
.arg_line(backend_args)
|
||||||
.arg_line(mode_args)
|
.arg_line(mode_args)
|
||||||
|
.env("__CARGO_USE_GITOXIDE_INSTEAD_OF_GIT2", "0") // respect `backend`
|
||||||
.masquerade_as_nightly_cargo(&["gitoxide=fetch", "git=shallow-deps"])
|
.masquerade_as_nightly_cargo(&["gitoxide=fetch", "git=shallow-deps"])
|
||||||
.run();
|
.run();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user