diff options
Diffstat (limited to 'tests/testsuite/cargo_add/git_branch')
l--------- | tests/testsuite/cargo_add/git_branch/in | 1 | ||||
-rw-r--r-- | tests/testsuite/cargo_add/git_branch/mod.rs | 37 | ||||
-rw-r--r-- | tests/testsuite/cargo_add/git_branch/out/Cargo.toml | 8 | ||||
-rw-r--r-- | tests/testsuite/cargo_add/git_branch/stderr.log | 3 | ||||
-rw-r--r-- | tests/testsuite/cargo_add/git_branch/stdout.log | 0 |
5 files changed, 49 insertions, 0 deletions
diff --git a/tests/testsuite/cargo_add/git_branch/in b/tests/testsuite/cargo_add/git_branch/in new file mode 120000 index 0000000..6c6a27f --- /dev/null +++ b/tests/testsuite/cargo_add/git_branch/in @@ -0,0 +1 @@ +../add-basic.in
\ No newline at end of file diff --git a/tests/testsuite/cargo_add/git_branch/mod.rs b/tests/testsuite/cargo_add/git_branch/mod.rs new file mode 100644 index 0000000..0515645 --- /dev/null +++ b/tests/testsuite/cargo_add/git_branch/mod.rs @@ -0,0 +1,37 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use crate::cargo_add::init_registry; +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + init_registry(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + let (git_dep, git_repo) = cargo_test_support::git::new_repo("git-package", |project| { + project + .file( + "Cargo.toml", + &cargo_test_support::basic_manifest("git-package", "0.3.0+git-package"), + ) + .file("src/lib.rs", "") + }); + let branch = "dev"; + let find_head = || (git_repo.head().unwrap().peel_to_commit().unwrap()); + git_repo.branch(branch, &find_head(), false).unwrap(); + let git_url = git_dep.url().to_string(); + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .args(["git-package", "--git", &git_url, "--branch", branch]) + .current_dir(cwd) + .assert() + .success() + .stdout_matches_path(curr_dir!().join("stdout.log")) + .stderr_matches_path(curr_dir!().join("stderr.log")); + + assert_ui().subset_matches(curr_dir!().join("out"), &project_root); +} diff --git a/tests/testsuite/cargo_add/git_branch/out/Cargo.toml b/tests/testsuite/cargo_add/git_branch/out/Cargo.toml new file mode 100644 index 0000000..2eb2955 --- /dev/null +++ b/tests/testsuite/cargo_add/git_branch/out/Cargo.toml @@ -0,0 +1,8 @@ +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +git-package = { git = "[ROOTURL]/git-package", branch = "dev", version = "0.3.0" } diff --git a/tests/testsuite/cargo_add/git_branch/stderr.log b/tests/testsuite/cargo_add/git_branch/stderr.log new file mode 100644 index 0000000..839d8bb --- /dev/null +++ b/tests/testsuite/cargo_add/git_branch/stderr.log @@ -0,0 +1,3 @@ + Updating git repository `[ROOTURL]/git-package` + Adding git-package (git) to dependencies. + Updating git repository `[ROOTURL]/git-package` diff --git a/tests/testsuite/cargo_add/git_branch/stdout.log b/tests/testsuite/cargo_add/git_branch/stdout.log new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/testsuite/cargo_add/git_branch/stdout.log |