Skip to content

Commit e29810c

Browse files
committed
feat: add tests for similarly named features
1 parent 49e2f84 commit e29810c

File tree

13 files changed

+209
-0
lines changed

13 files changed

+209
-0
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[workspace]
2+
3+
[package]
4+
name = "cargo-list-test-fixture"
5+
version = "0.0.0"
6+
edition = "2024"
7+

tests/testsuite/cargo_add/feature_suggestion_multiple/in/src/lib.rs

Whitespace-only changes.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
use cargo_test_support::current_dir;
2+
use cargo_test_support::file;
3+
use cargo_test_support::prelude::*;
4+
use cargo_test_support::Project;
5+
6+
#[cargo_test]
7+
fn case() {
8+
let project = Project::from_template(current_dir!().join("in"));
9+
let project_root = project.root();
10+
let cwd = &project_root;
11+
12+
cargo_test_support::registry::Package::new("my-package", "0.1.0+my-package")
13+
.feature("bar", &[])
14+
.feature("foo", &[])
15+
.publish();
16+
17+
snapbox::cmd::Command::cargo_ui()
18+
.arg("add")
19+
.arg_line("my-package --features baz --features feo")
20+
.current_dir(cwd)
21+
.assert()
22+
.failure()
23+
.stderr_eq(file!["stderr.term.svg"]);
24+
}
Lines changed: 38 additions & 0 deletions
Loading
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[workspace]
2+
3+
[package]
4+
name = "cargo-list-test-fixture"
5+
version = "0.0.0"
6+
edition = "2024"
7+

tests/testsuite/cargo_add/feature_suggestion_none/in/src/lib.rs

Whitespace-only changes.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
use cargo_test_support::current_dir;
2+
use cargo_test_support::file;
3+
use cargo_test_support::prelude::*;
4+
use cargo_test_support::Project;
5+
6+
#[cargo_test]
7+
fn case() {
8+
let project = Project::from_template(current_dir!().join("in"));
9+
let project_root = project.root();
10+
let cwd = &project_root;
11+
12+
cargo_test_support::registry::Package::new("my-package", "0.1.0+my-package")
13+
.feature("bar", &[])
14+
.feature("foo", &[])
15+
.publish();
16+
17+
snapbox::cmd::Command::cargo_ui()
18+
.arg("add")
19+
.arg_line("my-package --features none_existent")
20+
.current_dir(cwd)
21+
.assert()
22+
.failure()
23+
.stderr_eq(file!["stderr.term.svg"]);
24+
}
Lines changed: 38 additions & 0 deletions
Loading
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[workspace]
2+
3+
[package]
4+
name = "cargo-list-test-fixture"
5+
version = "0.0.0"
6+
edition = "2024"
7+

tests/testsuite/cargo_add/feature_suggestion_single/in/src/lib.rs

Whitespace-only changes.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
use cargo_test_support::current_dir;
2+
use cargo_test_support::file;
3+
use cargo_test_support::prelude::*;
4+
use cargo_test_support::Project;
5+
6+
#[cargo_test]
7+
fn case() {
8+
let project = Project::from_template(current_dir!().join("in"));
9+
let project_root = project.root();
10+
let cwd = &project_root;
11+
12+
cargo_test_support::registry::Package::new("my-package", "0.1.0+my-package")
13+
.feature("bar", &[])
14+
.publish();
15+
16+
snapbox::cmd::Command::cargo_ui()
17+
.arg("add")
18+
.arg_line("my-package --features baz")
19+
.current_dir(cwd)
20+
.assert()
21+
.failure()
22+
.stderr_eq(file!["stderr.term.svg"]);
23+
}
Lines changed: 38 additions & 0 deletions
Loading

tests/testsuite/cargo_add/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ mod dev_existing_path_base;
2121
mod dev_prefer_existing_version;
2222
mod dry_run;
2323
mod empty_dep_name;
24+
mod feature_suggestion_multiple;
25+
mod feature_suggestion_none;
26+
mod feature_suggestion_single;
2427
mod features;
2528
mod features_activated_over_limit;
2629
mod features_deactivated_over_limit;

0 commit comments

Comments
 (0)