From e0477a38690817a4bfd92982da7b8ab99c183534 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Mon, 25 Nov 2024 10:14:00 -0600 Subject: [PATCH] test(remove): Show what happens with last dep in a table --- .../cargo_remove/last_dep/in/Cargo.toml | 13 +++++++++ .../cargo_remove/last_dep/in/src/lib.rs | 1 + tests/testsuite/cargo_remove/last_dep/mod.rs | 28 +++++++++++++++++++ .../cargo_remove/last_dep/out/Cargo.toml | 10 +++++++ .../cargo_remove/last_dep/stderr.term.svg | 27 ++++++++++++++++++ tests/testsuite/cargo_remove/mod.rs | 1 + 6 files changed, 80 insertions(+) create mode 100644 tests/testsuite/cargo_remove/last_dep/in/Cargo.toml create mode 100644 tests/testsuite/cargo_remove/last_dep/in/src/lib.rs create mode 100644 tests/testsuite/cargo_remove/last_dep/mod.rs create mode 100644 tests/testsuite/cargo_remove/last_dep/out/Cargo.toml create mode 100644 tests/testsuite/cargo_remove/last_dep/stderr.term.svg diff --git a/tests/testsuite/cargo_remove/last_dep/in/Cargo.toml b/tests/testsuite/cargo_remove/last_dep/in/Cargo.toml new file mode 100644 index 000000000..5e6cc267d --- /dev/null +++ b/tests/testsuite/cargo_remove/last_dep/in/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "cargo-remove-test-fixture" +version = "0.1.0" +edition = "2015" + +[[bin]] +name = "main" +path = "src/main.rs" + +[dependencies] +docopt = "0.6" + +[features] diff --git a/tests/testsuite/cargo_remove/last_dep/in/src/lib.rs b/tests/testsuite/cargo_remove/last_dep/in/src/lib.rs new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/tests/testsuite/cargo_remove/last_dep/in/src/lib.rs @@ -0,0 +1 @@ + diff --git a/tests/testsuite/cargo_remove/last_dep/mod.rs b/tests/testsuite/cargo_remove/last_dep/mod.rs new file mode 100644 index 000000000..6e287f223 --- /dev/null +++ b/tests/testsuite/cargo_remove/last_dep/mod.rs @@ -0,0 +1,28 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::current_dir; +use cargo_test_support::file; +use cargo_test_support::prelude::*; +use cargo_test_support::str; +use cargo_test_support::CargoCommandExt; +use cargo_test_support::Project; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("docopt", "0.6.2+my-package").publish(); + + let project = Project::from_template(current_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("remove") + .args(["docopt"]) + .current_dir(cwd) + .assert() + .success() + .stdout_eq(str![""]) + .stderr_eq(file!["stderr.term.svg"]); + + assert_ui().subset_matches(current_dir!().join("out"), &project_root); +} diff --git a/tests/testsuite/cargo_remove/last_dep/out/Cargo.toml b/tests/testsuite/cargo_remove/last_dep/out/Cargo.toml new file mode 100644 index 000000000..ad97bd5ca --- /dev/null +++ b/tests/testsuite/cargo_remove/last_dep/out/Cargo.toml @@ -0,0 +1,10 @@ +[package] +name = "cargo-remove-test-fixture" +version = "0.1.0" +edition = "2015" + +[[bin]] +name = "main" +path = "src/main.rs" + +[features] diff --git a/tests/testsuite/cargo_remove/last_dep/stderr.term.svg b/tests/testsuite/cargo_remove/last_dep/stderr.term.svg new file mode 100644 index 000000000..51bcb0f99 --- /dev/null +++ b/tests/testsuite/cargo_remove/last_dep/stderr.term.svg @@ -0,0 +1,27 @@ + + + + + + + Removing docopt from dependencies + + + + + + diff --git a/tests/testsuite/cargo_remove/mod.rs b/tests/testsuite/cargo_remove/mod.rs index 7b9190642..92a62439d 100644 --- a/tests/testsuite/cargo_remove/mod.rs +++ b/tests/testsuite/cargo_remove/mod.rs @@ -15,6 +15,7 @@ mod invalid_section; mod invalid_section_dep; mod invalid_target; mod invalid_target_dep; +mod last_dep; mod multiple_deps; mod multiple_dev; mod no_arg;