summaryrefslogtreecommitdiffstats
path: root/src/tools/cargo/tests/testsuite/init/invalid_dir_name
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/cargo/tests/testsuite/init/invalid_dir_name')
-rw-r--r--src/tools/cargo/tests/testsuite/init/invalid_dir_name/mod.rs21
-rw-r--r--src/tools/cargo/tests/testsuite/init/invalid_dir_name/stderr.log8
-rw-r--r--src/tools/cargo/tests/testsuite/init/invalid_dir_name/stdout.log0
3 files changed, 29 insertions, 0 deletions
diff --git a/src/tools/cargo/tests/testsuite/init/invalid_dir_name/mod.rs b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/mod.rs
new file mode 100644
index 000000000..2b1be9022
--- /dev/null
+++ b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/mod.rs
@@ -0,0 +1,21 @@
+use cargo_test_support::paths;
+use cargo_test_support::prelude::*;
+use std::fs;
+
+use cargo_test_support::curr_dir;
+
+#[cargo_test]
+fn case() {
+ let foo = &paths::root().join("foo.bar");
+ fs::create_dir_all(foo).unwrap();
+
+ snapbox::cmd::Command::cargo_ui()
+ .arg_line("init")
+ .current_dir(foo)
+ .assert()
+ .code(101)
+ .stdout_matches_path(curr_dir!().join("stdout.log"))
+ .stderr_matches_path(curr_dir!().join("stderr.log"));
+
+ assert!(!foo.join("Cargo.toml").is_file());
+}
diff --git a/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stderr.log b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stderr.log
new file mode 100644
index 000000000..86d2c665f
--- /dev/null
+++ b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stderr.log
@@ -0,0 +1,8 @@
+error: invalid character `.` in package name: `foo.bar`, characters must be Unicode XID characters (numbers, `-`, `_`, or most letters)
+If you need a package name to not match the directory name, consider using --name flag.
+If you need a binary with the name "foo.bar", use a valid package name, and set the binary name to be different from the package. This can be done by setting the binary filename to `src/bin/foo.bar.rs` or change the name in Cargo.toml with:
+
+ [[bin]]
+ name = "foo.bar"
+ path = "src/main.rs"
+
diff --git a/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stdout.log b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stdout.log
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/src/tools/cargo/tests/testsuite/init/invalid_dir_name/stdout.log