From 9918693037dce8aa4bb6f08741b6812923486c18 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 19 Jun 2024 11:26:03 +0200 Subject: Merging upstream version 1.76.0+dfsg1. Signed-off-by: Daniel Baumann --- .../cargo_add/change_rename_target/out/Cargo.toml | 3 +++ .../out/primary/Cargo.toml | 3 +++ .../detect_workspace_inherit_public/in/Cargo.toml | 5 +++++ .../in/dependency/Cargo.toml | 3 +++ .../in/dependency/src/lib.rs | 0 .../in/primary/Cargo.toml | 4 ++++ .../in/primary/src/lib.rs | 0 .../detect_workspace_inherit_public/mod.rs | 26 ++++++++++++++++++++++ .../detect_workspace_inherit_public/out/Cargo.toml | 5 +++++ .../out/dependency/Cargo.toml | 3 +++ .../out/primary/Cargo.toml | 7 ++++++ .../detect_workspace_inherit_public/stderr.log | 1 + .../detect_workspace_inherit_public/stdout.log | 0 .../tests/testsuite/cargo_add/empty_dep_name/in | 1 + .../testsuite/cargo_add/empty_dep_name/mod.rs | 24 ++++++++++++++++++++ .../cargo_add/empty_dep_name/out/Cargo.toml | 5 +++++ .../testsuite/cargo_add/empty_dep_name/stderr.log | 1 + .../testsuite/cargo_add/empty_dep_name/stdout.log | 0 .../tests/testsuite/cargo_add/help/stdout.log | 17 +++++++++++--- src/tools/cargo/tests/testsuite/cargo_add/mod.rs | 9 ++++++++ .../tests/testsuite/cargo_add/no_optional/mod.rs | 16 ++----------- .../testsuite/cargo_add/no_optional/out/Cargo.toml | 3 +-- .../testsuite/cargo_add/no_optional/stderr.log | 3 +-- .../testsuite/cargo_add/no_public/in/Cargo.toml | 6 +++++ .../testsuite/cargo_add/no_public/in/src/lib.rs | 0 .../tests/testsuite/cargo_add/no_public/mod.rs | 26 ++++++++++++++++++++++ .../testsuite/cargo_add/no_public/out/Cargo.toml | 9 ++++++++ .../tests/testsuite/cargo_add/no_public/stderr.log | 2 ++ .../tests/testsuite/cargo_add/no_public/stdout.log | 0 .../tests/testsuite/cargo_add/optional/mod.rs | 16 ++----------- .../testsuite/cargo_add/optional/out/Cargo.toml | 6 +++-- .../tests/testsuite/cargo_add/optional/stderr.log | 3 +-- .../overwrite_git_with_path/out/primary/Cargo.toml | 3 +++ .../out/primary/Cargo.toml | 3 +++ .../cargo_add/overwrite_name_noop/out/Cargo.toml | 3 +++ .../cargo_add/overwrite_no_optional/in/Cargo.toml | 3 +-- .../cargo_add/overwrite_no_optional/mod.rs | 16 ++----------- .../cargo_add/overwrite_no_optional/out/Cargo.toml | 3 +-- .../cargo_add/overwrite_no_optional/stderr.log | 3 +-- .../in/Cargo.toml | 3 +-- .../overwrite_no_optional_with_optional/mod.rs | 16 ++----------- .../out/Cargo.toml | 6 +++-- .../overwrite_no_optional_with_optional/stderr.log | 3 +-- .../cargo_add/overwrite_no_public/in/Cargo.toml | 9 ++++++++ .../cargo_add/overwrite_no_public/in/src/lib.rs | 0 .../testsuite/cargo_add/overwrite_no_public/mod.rs | 26 ++++++++++++++++++++++ .../cargo_add/overwrite_no_public/out/Cargo.toml | 9 ++++++++ .../cargo_add/overwrite_no_public/stderr.log | 2 ++ .../cargo_add/overwrite_no_public/stdout.log | 0 .../overwrite_no_public_with_public/in/Cargo.toml | 9 ++++++++ .../overwrite_no_public_with_public/in/src/lib.rs | 0 .../overwrite_no_public_with_public/mod.rs | 26 ++++++++++++++++++++++ .../overwrite_no_public_with_public/out/Cargo.toml | 9 ++++++++ .../overwrite_no_public_with_public/stderr.log | 2 ++ .../overwrite_no_public_with_public/stdout.log | 0 .../cargo_add/overwrite_optional/in/Cargo.toml | 3 +-- .../testsuite/cargo_add/overwrite_optional/mod.rs | 16 ++----------- .../cargo_add/overwrite_optional/out/Cargo.toml | 6 +++-- .../cargo_add/overwrite_optional/stderr.log | 3 +-- .../in/Cargo.toml | 1 - .../overwrite_optional_with_no_optional/mod.rs | 14 ++---------- .../out/Cargo.toml | 1 - .../overwrite_optional_with_no_optional/stderr.log | 1 - .../overwrite_optional_with_optional/in/Cargo.toml | 11 +++++++++ .../overwrite_optional_with_optional/in/src/lib.rs | 0 .../overwrite_optional_with_optional/mod.rs | 26 ++++++++++++++++++++++ .../out/Cargo.toml | 11 +++++++++ .../overwrite_optional_with_optional/stderr.log | 2 ++ .../overwrite_optional_with_optional/stdout.log | 0 .../cargo_add/overwrite_path_noop/out/Cargo.toml | 3 +++ .../out/primary/Cargo.toml | 3 +++ .../cargo_add/overwrite_public/in/Cargo.toml | 9 ++++++++ .../cargo_add/overwrite_public/in/src/lib.rs | 0 .../testsuite/cargo_add/overwrite_public/mod.rs | 26 ++++++++++++++++++++++ .../cargo_add/overwrite_public/out/Cargo.toml | 9 ++++++++ .../cargo_add/overwrite_public/stderr.log | 2 ++ .../cargo_add/overwrite_public/stdout.log | 0 .../overwrite_public_with_no_public/in/Cargo.toml | 9 ++++++++ .../overwrite_public_with_no_public/in/src/lib.rs | 0 .../overwrite_public_with_no_public/mod.rs | 26 ++++++++++++++++++++++ .../overwrite_public_with_no_public/out/Cargo.toml | 9 ++++++++ .../overwrite_public_with_no_public/stderr.log | 2 ++ .../overwrite_public_with_no_public/stdout.log | 0 .../out/Cargo.toml | 3 +++ .../overwrite_version_with_git/out/Cargo.toml | 3 +++ .../out/primary/Cargo.toml | 3 +++ .../tests/testsuite/cargo_add/public/in/Cargo.toml | 6 +++++ .../tests/testsuite/cargo_add/public/in/src/lib.rs | 0 .../cargo/tests/testsuite/cargo_add/public/mod.rs | 26 ++++++++++++++++++++++ .../testsuite/cargo_add/public/out/Cargo.toml | 9 ++++++++ .../tests/testsuite/cargo_add/public/stderr.log | 2 ++ .../tests/testsuite/cargo_add/public/stdout.log | 0 .../testsuite/cargo_add/rust_version_ignore/mod.rs | 2 +- .../cargo_add/rust_version_ignore/stderr.log | 5 ----- 94 files changed, 493 insertions(+), 120 deletions(-) create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/dependency/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/primary/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stdout.log create mode 120000 src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/in create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/no_public/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stdout.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/in/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/in/src/lib.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/mod.rs create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/out/Cargo.toml create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/stderr.log create mode 100644 src/tools/cargo/tests/testsuite/cargo_add/public/stdout.log (limited to 'src/tools/cargo/tests/testsuite/cargo_add') diff --git a/src/tools/cargo/tests/testsuite/cargo_add/change_rename_target/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/change_rename_target/out/Cargo.toml index 70cd31826..bc29fac8e 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/change_rename_target/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/change_rename_target/out/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] some-package = { package = "my-package2", version = "99999.0.0", optional = true } + +[features] +some-package = ["dep:some-package"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_optional/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_optional/out/primary/Cargo.toml index 6dd7fb6d6..38ff36eb3 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_optional/out/primary/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_optional/out/primary/Cargo.toml @@ -4,3 +4,6 @@ version = "0.0.0" [dependencies] foo = { workspace = true, optional = true } + +[features] +foo = ["dep:foo"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/Cargo.toml new file mode 100644 index 000000000..24c50556b --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/Cargo.toml @@ -0,0 +1,5 @@ +[workspace] +members = ["primary", "dependency"] + +[workspace.dependencies] +foo = { version = "0.0.0", path = "./dependency"} \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/Cargo.toml new file mode 100644 index 000000000..2d247d4d2 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/Cargo.toml @@ -0,0 +1,3 @@ +[package] +name = "foo" +version = "0.0.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/dependency/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/Cargo.toml new file mode 100644 index 000000000..b5923a106 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/Cargo.toml @@ -0,0 +1,4 @@ +cargo-features = ["public-dependency"] +[package] +name = "bar" +version = "0.0.0" \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/in/primary/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/mod.rs new file mode 100644 index 000000000..680d4c4e3 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .args(["foo", "-p", "bar", "--public"]) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/Cargo.toml new file mode 100644 index 000000000..24c50556b --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/Cargo.toml @@ -0,0 +1,5 @@ +[workspace] +members = ["primary", "dependency"] + +[workspace.dependencies] +foo = { version = "0.0.0", path = "./dependency"} \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/dependency/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/dependency/Cargo.toml new file mode 100644 index 000000000..2d247d4d2 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/dependency/Cargo.toml @@ -0,0 +1,3 @@ +[package] +name = "foo" +version = "0.0.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/primary/Cargo.toml new file mode 100644 index 000000000..665c6ae5e --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/out/primary/Cargo.toml @@ -0,0 +1,7 @@ +cargo-features = ["public-dependency"] +[package] +name = "bar" +version = "0.0.0" + +[dependencies] +foo = { workspace = true, public = true } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stderr.log new file mode 100644 index 000000000..efa1ae9fa --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stderr.log @@ -0,0 +1 @@ + Adding foo (workspace) to public dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/detect_workspace_inherit_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/in b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/in new file mode 120000 index 000000000..6c6a27fcf --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/in @@ -0,0 +1 @@ +../add-basic.in \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/mod.rs new file mode 100644 index 000000000..d7044ee11 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/mod.rs @@ -0,0 +1,24 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("@1.2.3") + .current_dir(cwd) + .assert() + .failure() + .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/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/out/Cargo.toml new file mode 100644 index 000000000..3ecdb6681 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/out/Cargo.toml @@ -0,0 +1,5 @@ +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stderr.log new file mode 100644 index 000000000..d9547a42a --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stderr.log @@ -0,0 +1 @@ +error: package name cannot be empty diff --git a/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/empty_dep_name/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/help/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/help/stdout.log index cf2a91313..d2931ae9c 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/help/stdout.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/help/stdout.log @@ -32,6 +32,17 @@ Options: The package will be removed from your features. + --public + Mark the dependency as public + + The dependency can be referenced in your library's public API. + + --no-public + Mark the dependency as private + + While you can use the crate in your implementation, it cannot be referenced in your public + API. + --rename Rename the dependency @@ -45,12 +56,12 @@ Options: -n, --dry-run Don't actually write the manifest - -q, --quiet - Do not print cargo log messages - -v, --verbose... Use verbose output (-vv very verbose/build.rs output) + -q, --quiet + Do not print cargo log messages + --color Coloring: auto, always, never diff --git a/src/tools/cargo/tests/testsuite/cargo_add/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/mod.rs index e8633b0c4..653c2db94 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/mod.rs @@ -12,10 +12,12 @@ mod deprecated_section; mod detect_workspace_inherit; mod detect_workspace_inherit_features; mod detect_workspace_inherit_optional; +mod detect_workspace_inherit_public; mod dev; mod dev_build_conflict; mod dev_prefer_existing_version; mod dry_run; +mod empty_dep_name; mod empty_dep_table; mod features; mod features_activated_over_limit; @@ -65,6 +67,7 @@ mod namever; mod no_args; mod no_default_features; mod no_optional; +mod no_public; mod offline_empty_cache; mod optional; mod overwrite_default_features; @@ -81,11 +84,16 @@ mod overwrite_no_default_features; mod overwrite_no_default_features_with_default_features; mod overwrite_no_optional; mod overwrite_no_optional_with_optional; +mod overwrite_no_public; +mod overwrite_no_public_with_public; mod overwrite_optional; mod overwrite_optional_with_no_optional; +mod overwrite_optional_with_optional; mod overwrite_path_noop; mod overwrite_path_with_version; mod overwrite_preserves_inline_table; +mod overwrite_public; +mod overwrite_public_with_no_public; mod overwrite_rename_with_no_rename; mod overwrite_rename_with_rename; mod overwrite_rename_with_rename_noop; @@ -103,6 +111,7 @@ mod preserve_dep_std_table; mod preserve_features_table; mod preserve_sorted; mod preserve_unsorted; +mod public; mod quiet; mod registry; mod rename; diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/mod.rs index 9145528bf..cc7e79b97 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/mod.rs @@ -7,19 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for name in ["my-package1", "my-package2"] { - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new(name, ver).publish(); - } - } + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); let project = Project::from_template(curr_dir!().join("in")); let project_root = project.root(); @@ -27,7 +15,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("my-package1 my-package2@0.4.1 --no-optional") + .arg_line("my-package --no-optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/out/Cargo.toml index c5e017892..496ac8a62 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/out/Cargo.toml @@ -5,5 +5,4 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = "99999.0.0" -my-package2 = "0.4.1" +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/stderr.log index fb8d4903d..8e025739f 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/no_optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_optional/stderr.log @@ -1,3 +1,2 @@ Updating `dummy-registry` index - Adding my-package1 v99999.0.0 to dependencies. - Adding my-package2 v0.4.1 to dependencies. + Adding my-package v0.1.0 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/no_public/in/Cargo.toml new file mode 100644 index 000000000..e9087535b --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_public/in/Cargo.toml @@ -0,0 +1,6 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/no_public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/no_public/mod.rs new file mode 100644 index 000000000..912ac3fd3 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --no-public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/no_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/no_public/out/Cargo.toml new file mode 100644 index 000000000..b9f045116 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/no_public/stderr.log new file mode 100644 index 000000000..8e025739f --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/no_public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/no_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/no_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/optional/mod.rs index 408a46ed3..8daaa961d 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/optional/mod.rs @@ -7,19 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for name in ["my-package1", "my-package2"] { - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new(name, ver).publish(); - } - } + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); let project = Project::from_template(curr_dir!().join("in")); let project_root = project.root(); @@ -27,7 +15,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("my-package1 my-package2@0.4.1 --optional") + .arg_line("my-package --optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/optional/out/Cargo.toml index eda5445c5..a8789b033 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/optional/out/Cargo.toml @@ -5,5 +5,7 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = { version = "99999.0.0", optional = true } -my-package2 = { version = "0.4.1", optional = true } +my-package = { version = "0.1.0", optional = true } + +[features] +my-package = ["dep:my-package"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/optional/stderr.log index 8cf4812cf..595ac276b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/optional/stderr.log @@ -1,3 +1,2 @@ Updating `dummy-registry` index - Adding my-package1 v99999.0.0 to optional dependencies. - Adding my-package2 v0.4.1 to optional dependencies. + Adding my-package v0.1.0 to optional dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_git_with_path/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_git_with_path/out/primary/Cargo.toml index ad1205481..27e6e175d 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_git_with_path/out/primary/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_git_with_path/out/primary/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] cargo-list-test-fixture-dependency = { optional = true, path = "../dependency", version = "0.0.0" } + +[features] +cargo-list-test-fixture-dependency = ["dep:cargo-list-test-fixture-dependency"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_inherit_optional_noop/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_inherit_optional_noop/out/primary/Cargo.toml index 6dd7fb6d6..38ff36eb3 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_inherit_optional_noop/out/primary/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_inherit_optional_noop/out/primary/Cargo.toml @@ -4,3 +4,6 @@ version = "0.0.0" [dependencies] foo = { workspace = true, optional = true } + +[features] +foo = ["dep:foo"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_name_noop/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_name_noop/out/Cargo.toml index bbaf4f552..717252191 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_name_noop/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_name_noop/out/Cargo.toml @@ -7,3 +7,6 @@ version = "0.0.0" [dependencies] your-face = { version = "0.0.0", path = "dependency", optional = true, default-features = false, features = ["nose", "mouth"], registry = "alternative" } + +[features] +your-face = ["dep:your-face"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/in/Cargo.toml index c5e017892..496ac8a62 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/in/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/in/Cargo.toml @@ -5,5 +5,4 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = "99999.0.0" -my-package2 = "0.4.1" +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/mod.rs index 9145528bf..cc7e79b97 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/mod.rs @@ -7,19 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for name in ["my-package1", "my-package2"] { - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new(name, ver).publish(); - } - } + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); let project = Project::from_template(curr_dir!().join("in")); let project_root = project.root(); @@ -27,7 +15,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("my-package1 my-package2@0.4.1 --no-optional") + .arg_line("my-package --no-optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/out/Cargo.toml index c5e017892..496ac8a62 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/out/Cargo.toml @@ -5,5 +5,4 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = "99999.0.0" -my-package2 = "0.4.1" +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/stderr.log index fb8d4903d..8e025739f 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional/stderr.log @@ -1,3 +1,2 @@ Updating `dummy-registry` index - Adding my-package1 v99999.0.0 to dependencies. - Adding my-package2 v0.4.1 to dependencies. + Adding my-package v0.1.0 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/in/Cargo.toml index 8cd2616d4..98e2f7da1 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/in/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/in/Cargo.toml @@ -5,5 +5,4 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = { version = "99999.0.0", optional = false } -my-package2 = { version = "0.4.1", optional = false } +my-package = { version = "0.1.0", optional = false } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/mod.rs index 408a46ed3..8daaa961d 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/mod.rs @@ -7,19 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for name in ["my-package1", "my-package2"] { - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new(name, ver).publish(); - } - } + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); let project = Project::from_template(curr_dir!().join("in")); let project_root = project.root(); @@ -27,7 +15,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("my-package1 my-package2@0.4.1 --optional") + .arg_line("my-package --optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/out/Cargo.toml index eda5445c5..a8789b033 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/out/Cargo.toml @@ -5,5 +5,7 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = { version = "99999.0.0", optional = true } -my-package2 = { version = "0.4.1", optional = true } +my-package = { version = "0.1.0", optional = true } + +[features] +my-package = ["dep:my-package"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/stderr.log index 8cf4812cf..595ac276b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_optional_with_optional/stderr.log @@ -1,3 +1,2 @@ Updating `dummy-registry` index - Adding my-package1 v99999.0.0 to optional dependencies. - Adding my-package2 v0.4.1 to optional dependencies. + Adding my-package v0.1.0 to optional dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/Cargo.toml new file mode 100644 index 000000000..43d0d8238 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = "0.1.0" \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/mod.rs new file mode 100644 index 000000000..912ac3fd3 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --no-public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/out/Cargo.toml new file mode 100644 index 000000000..b9f045116 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stderr.log new file mode 100644 index 000000000..8e025739f --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/Cargo.toml new file mode 100644 index 000000000..c6e61bdca --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0", public = false } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/mod.rs new file mode 100644 index 000000000..bbf8d65a6 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/out/Cargo.toml new file mode 100644 index 000000000..77fccaa6a --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0", public = true } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stderr.log new file mode 100644 index 000000000..5259bbde8 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to public dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_no_public_with_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/in/Cargo.toml index c5e017892..496ac8a62 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/in/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/in/Cargo.toml @@ -5,5 +5,4 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = "99999.0.0" -my-package2 = "0.4.1" +my-package = "0.1.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/mod.rs index 408a46ed3..8daaa961d 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/mod.rs @@ -7,19 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for name in ["my-package1", "my-package2"] { - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new(name, ver).publish(); - } - } + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); let project = Project::from_template(curr_dir!().join("in")); let project_root = project.root(); @@ -27,7 +15,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("my-package1 my-package2@0.4.1 --optional") + .arg_line("my-package --optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/out/Cargo.toml index eda5445c5..a8789b033 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/out/Cargo.toml @@ -5,5 +5,7 @@ name = "cargo-list-test-fixture" version = "0.0.0" [dependencies] -my-package1 = { version = "99999.0.0", optional = true } -my-package2 = { version = "0.4.1", optional = true } +my-package = { version = "0.1.0", optional = true } + +[features] +my-package = ["dep:my-package"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/stderr.log index 8cf4812cf..595ac276b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional/stderr.log @@ -1,3 +1,2 @@ Updating `dummy-registry` index - Adding my-package1 v99999.0.0 to optional dependencies. - Adding my-package2 v0.4.1 to optional dependencies. + Adding my-package v0.1.0 to optional dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/in/Cargo.toml index 5ef953209..a7722da07 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/in/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/in/Cargo.toml @@ -10,4 +10,3 @@ other = ["your-face/nose"] [dependencies] your-face = { version = "99999.0.0", optional = true } -my-package2 = { version = "0.4.1", optional = true } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/mod.rs index 3090a7527..511b31e29 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/mod.rs @@ -7,17 +7,7 @@ use cargo_test_support::curr_dir; #[cargo_test] fn case() { cargo_test_support::registry::init(); - for ver in [ - "0.1.1+my-package", - "0.2.0+my-package", - "0.2.3+my-package", - "0.4.1+my-package", - "20.0.0+my-package", - "99999.0.0+my-package", - "99999.0.0-alpha.1+my-package", - ] { - cargo_test_support::registry::Package::new("my-package2", ver).publish(); - } + cargo_test_support::registry::Package::new("your-face", "99999.0.0+my-package") .feature("nose", &[]) .feature("mouth", &[]) @@ -31,7 +21,7 @@ fn case() { snapbox::cmd::Command::cargo_ui() .arg("add") - .arg_line("your-face my-package2@0.4.1 --no-optional") + .arg_line("your-face --no-optional") .current_dir(cwd) .assert() .success() diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/out/Cargo.toml index bf6c52963..b57286ed5 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/out/Cargo.toml @@ -10,4 +10,3 @@ other = ["your-face/nose"] [dependencies] your-face = { version = "99999.0.0" } -my-package2 = { version = "0.4.1" } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/stderr.log index 5fe113e86..796b9601b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_no_optional/stderr.log @@ -5,4 +5,3 @@ - eyes - mouth - nose - Adding my-package2 v0.4.1 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/Cargo.toml new file mode 100644 index 000000000..e446eca38 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/Cargo.toml @@ -0,0 +1,11 @@ +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package1 = { version = "99999.0.0", optional = true } + +[features] +default = ["dep:my-package1"] \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/mod.rs new file mode 100644 index 000000000..434124e93 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package1", "99999.0.0").publish(); + + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package1 --optional") + .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/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/out/Cargo.toml new file mode 100644 index 000000000..e68fcdb3c --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/out/Cargo.toml @@ -0,0 +1,11 @@ +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package1 = { version = "99999.0.0", optional = true } + +[features] +default = ["dep:my-package1"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stderr.log new file mode 100644 index 000000000..ba9cb313d --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package1 v99999.0.0 to optional dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_optional_with_optional/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_noop/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_noop/out/Cargo.toml index bbaf4f552..717252191 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_noop/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_noop/out/Cargo.toml @@ -7,3 +7,6 @@ version = "0.0.0" [dependencies] your-face = { version = "0.0.0", path = "dependency", optional = true, default-features = false, features = ["nose", "mouth"], registry = "alternative" } + +[features] +your-face = ["dep:your-face"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_with_version/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_with_version/out/primary/Cargo.toml index a20f2095d..c45f79491 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_with_version/out/primary/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_path_with_version/out/primary/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] cargo-list-test-fixture-dependency = { optional = true, version = "20.0" } + +[features] +cargo-list-test-fixture-dependency = ["dep:cargo-list-test-fixture-dependency"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/Cargo.toml new file mode 100644 index 000000000..43d0d8238 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = "0.1.0" \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/mod.rs new file mode 100644 index 000000000..bbf8d65a6 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/out/Cargo.toml new file mode 100644 index 000000000..77fccaa6a --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0", public = true } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stderr.log new file mode 100644 index 000000000..5259bbde8 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to public dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/Cargo.toml new file mode 100644 index 000000000..cc7ec1a9b --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0", public = true } \ No newline at end of file diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/mod.rs new file mode 100644 index 000000000..912ac3fd3 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --no-public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/out/Cargo.toml new file mode 100644 index 000000000..cfa80cc13 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0" } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stderr.log new file mode 100644 index 000000000..8e025739f --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_public_with_no_public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_rename_with_rename_noop/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_rename_with_rename_noop/out/Cargo.toml index 450229245..0217d4176 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_rename_with_rename_noop/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_rename_with_rename_noop/out/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] a1 = { package = "versioned-package", version = "0.1.1", optional = true } + +[features] +a1 = ["dep:a1"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_git/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_git/out/Cargo.toml index 260014024..a3eabd065 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_git/out/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_git/out/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] versioned-package = { version = "0.3.0", optional = true, git = "[ROOTURL]/versioned-package" } + +[features] +versioned-package = ["dep:versioned-package"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_path/out/primary/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_path/out/primary/Cargo.toml index 07253670a..bd460a11b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_path/out/primary/Cargo.toml +++ b/src/tools/cargo/tests/testsuite/cargo_add/overwrite_version_with_path/out/primary/Cargo.toml @@ -6,3 +6,6 @@ version = "0.0.0" [dependencies] cargo-list-test-fixture-dependency = { version = "0.0.0", optional = true, path = "../dependency" } + +[features] +cargo-list-test-fixture-dependency = ["dep:cargo-list-test-fixture-dependency"] diff --git a/src/tools/cargo/tests/testsuite/cargo_add/public/in/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/public/in/Cargo.toml new file mode 100644 index 000000000..e9087535b --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/public/in/Cargo.toml @@ -0,0 +1,6 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" diff --git a/src/tools/cargo/tests/testsuite/cargo_add/public/in/src/lib.rs b/src/tools/cargo/tests/testsuite/cargo_add/public/in/src/lib.rs new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/public/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/public/mod.rs new file mode 100644 index 000000000..bbf8d65a6 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/public/mod.rs @@ -0,0 +1,26 @@ +use cargo_test_support::compare::assert_ui; +use cargo_test_support::prelude::*; +use cargo_test_support::Project; + +use cargo_test_support::curr_dir; + +#[cargo_test] +fn case() { + cargo_test_support::registry::init(); + cargo_test_support::registry::Package::new("my-package", "0.1.0").publish(); + let project = Project::from_template(curr_dir!().join("in")); + let project_root = project.root(); + let cwd = &project_root; + + snapbox::cmd::Command::cargo_ui() + .arg("add") + .arg_line("my-package --public") + .current_dir(cwd) + .masquerade_as_nightly_cargo(&["public-dependency"]) + .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/src/tools/cargo/tests/testsuite/cargo_add/public/out/Cargo.toml b/src/tools/cargo/tests/testsuite/cargo_add/public/out/Cargo.toml new file mode 100644 index 000000000..77fccaa6a --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/public/out/Cargo.toml @@ -0,0 +1,9 @@ +cargo-features = ["public-dependency"] +[workspace] + +[package] +name = "cargo-list-test-fixture" +version = "0.0.0" + +[dependencies] +my-package = { version = "0.1.0", public = true } diff --git a/src/tools/cargo/tests/testsuite/cargo_add/public/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/public/stderr.log new file mode 100644 index 000000000..5259bbde8 --- /dev/null +++ b/src/tools/cargo/tests/testsuite/cargo_add/public/stderr.log @@ -0,0 +1,2 @@ + Updating `dummy-registry` index + Adding my-package v0.1.0 to public dependencies. diff --git a/src/tools/cargo/tests/testsuite/cargo_add/public/stdout.log b/src/tools/cargo/tests/testsuite/cargo_add/public/stdout.log new file mode 100644 index 000000000..e69de29bb diff --git a/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/mod.rs b/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/mod.rs index f8aac0ad8..0404d12b4 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/mod.rs +++ b/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/mod.rs @@ -26,7 +26,7 @@ fn case() { .current_dir(cwd) .masquerade_as_nightly_cargo(&["msrv-policy"]) .assert() - .code(101) + .code(0) .stdout_matches_path(curr_dir!().join("stdout.log")) .stderr_matches_path(curr_dir!().join("stderr.log")); diff --git a/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/stderr.log b/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/stderr.log index 96bcbddc2..430abe31b 100644 --- a/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/stderr.log +++ b/src/tools/cargo/tests/testsuite/cargo_add/rust_version_ignore/stderr.log @@ -1,7 +1,2 @@ Updating `dummy-registry` index Adding rust-version-user v0.2.1 to dependencies. -error: failed to select a version for the requirement `rust-version-user = "^0.2.1"` -candidate versions found which didn't match: 0.2.1, 0.1.0 -location searched: `dummy-registry` index (which is replacing registry `crates-io`) -required by package `cargo-list-test-fixture v0.0.0 ([ROOT]/case)` -perhaps a crate was updated and forgotten to be re-vendored? -- cgit v1.2.3