summaryrefslogtreecommitdiffstats
path: root/src/tools/cargo/tests/testsuite/alt_registry.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/cargo/tests/testsuite/alt_registry.rs')
-rw-r--r--src/tools/cargo/tests/testsuite/alt_registry.rs92
1 files changed, 91 insertions, 1 deletions
diff --git a/src/tools/cargo/tests/testsuite/alt_registry.rs b/src/tools/cargo/tests/testsuite/alt_registry.rs
index d6d7dd531..e347af1c7 100644
--- a/src/tools/cargo/tests/testsuite/alt_registry.rs
+++ b/src/tools/cargo/tests/testsuite/alt_registry.rs
@@ -715,7 +715,14 @@ fn bad_registry_name() {
[ERROR] failed to parse manifest at `[CWD]/Cargo.toml`
Caused by:
- invalid character ` ` in registry name: `bad name`, [..]",
+ TOML parse error at line 7, column 17
+ |
+ 7 | [dependencies.bar]
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ invalid character ` ` in registry name: `bad name`, [..]
+
+
+",
)
.run();
@@ -1546,3 +1553,86 @@ or use environment variable CARGO_REGISTRY_TOKEN",
)
.run();
}
+
+#[cargo_test]
+fn config_empty_registry_name() {
+ let _ = RegistryBuilder::new()
+ .no_configure_token()
+ .alternative()
+ .build();
+ let p = project()
+ .file("src/lib.rs", "")
+ .file(
+ ".cargo/config.toml",
+ "[registry.'']
+ ",
+ )
+ .build();
+
+ p.cargo("publish")
+ .arg("--registry")
+ .arg("")
+ .with_status(101)
+ .with_stderr(
+ "\
+[ERROR] registry name cannot be empty",
+ )
+ .run();
+}
+
+#[cargo_test]
+fn empty_registry_flag() {
+ let p = project().file("src/lib.rs", "").build();
+
+ p.cargo("publish")
+ .arg("--registry")
+ .arg("")
+ .with_status(101)
+ .with_stderr(
+ "\
+[ERROR] registry name cannot be empty",
+ )
+ .run();
+}
+
+#[cargo_test]
+fn empty_dependency_registry() {
+ let p = project()
+ .file(
+ "Cargo.toml",
+ r#"
+ [package]
+ name = "foo"
+ version = "0.0.1"
+
+ [dependencies]
+ bar = { version = "0.1.0", registry = "" }
+ "#,
+ )
+ .file(
+ "src/lib.rs",
+ "
+ extern crate bar;
+ pub fn f() { bar::bar(); }
+ ",
+ )
+ .build();
+
+ p.cargo("check")
+ .with_status(101)
+ .with_stderr(
+ "\
+[ERROR] failed to parse manifest at `[CWD]/Cargo.toml`
+
+Caused by:
+ TOML parse error at line 7, column 23
+ |
+ 7 | bar = { version = \"0.1.0\", registry = \"\" }
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ registry name cannot be empty
+
+
+",
+ )
+ .run();
+}