Skip to content

Commit

Permalink
test: cargo tree panic on artifact dep target deactivated
Browse files Browse the repository at this point in the history
  • Loading branch information
elchukc committed Oct 9, 2024
1 parent 5836ce9 commit 7de0988
Showing 1 changed file with 78 additions and 0 deletions.
78 changes: 78 additions & 0 deletions tests/testsuite/artifact_dep.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1579,6 +1579,84 @@ foo v0.0.0 ([ROOT]/foo)
.run();
}

/// From issue #10061
/// The case where:
/// * artifact dep is { target = <specified> }
/// * dependency of that artifact dependency specifies the same target
/// * the target is not activated.
#[cargo_test]
fn dep_of_artifact_dep_same_target_specified() {
if cross_compile::disabled() {
return;
}
let target = cross_compile::alternate();
let p = project()
.file(
"Cargo.toml",
&format!(
r#"
[package]
name = "foo"
version = "0.1.0"
edition = "2015"
resolver = "2"
[dependencies]
bar = {{ path = "bar", artifact = "bin", target = "{target}" }}
"#,
),
)
.file("src/lib.rs", "")
.file(
"bar/Cargo.toml",
&format!(
r#"
[package]
name = "bar"
version = "0.1.0"
[target.{target}.dependencies]
baz = {{ path = "../baz" }}
"#,
),
)
.file("bar/src/lib.rs", "")
.file(
"baz/Cargo.toml",
r#"
[package]
name = "baz"
version = "0.1.0"
"#,
)
.file("baz/src/lib.rs", "")
.build();

// TODO This command currently fails due to a bug in cargo but it should be fixed so that it succeeds in the future.
p.cargo("check -Z bindeps")
.masquerade_as_nightly_cargo(&["bindeps"])
.with_stderr_data(str![[r#"
[LOCKING] 2 packages to latest compatible versions
[ERROR] dependency `bar` in package `foo` requires a `bin` artifact to be present.
"#]])
.with_status(101)
.run();

// TODO This command currently fails due to a bug in cargo but it should be fixed so that it succeeds in the future.
p.cargo("tree -Z bindeps")
.masquerade_as_nightly_cargo(&["bindeps"])
.with_stderr_data(
r#"...
no entry found for key
...
"#,
)
.with_status(101)
.run();
}

#[cargo_test]
fn targets_are_picked_up_from_non_workspace_artifact_deps() {
if cross_compile::disabled() {
Expand Down

0 comments on commit 7de0988

Please sign in to comment.