aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart/src/commands/create_project.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/mozart/src/commands/create_project.rs')
-rw-r--r--crates/mozart/src/commands/create_project.rs146
1 files changed, 0 insertions, 146 deletions
diff --git a/crates/mozart/src/commands/create_project.rs b/crates/mozart/src/commands/create_project.rs
index 08e146e..49354d1 100644
--- a/crates/mozart/src/commands/create_project.rs
+++ b/crates/mozart/src/commands/create_project.rs
@@ -838,149 +838,3 @@ async fn install_root_package(
concrete_version,
})
}
-
-#[cfg(test)]
-mod tests {
- use super::*;
-
- #[test]
- fn test_directory_from_package_name() {
- assert_eq!(dir_from_package_name("vendor/package"), "package");
- assert_eq!(dir_from_package_name("monolog/monolog"), "monolog");
- assert_eq!(dir_from_package_name("symfony/console"), "console");
- // No slash: use entire string
- assert_eq!(dir_from_package_name("novendor"), "novendor");
- }
-
- #[test]
- fn test_non_empty_directory_rejected() {
- let dir = tempfile::tempdir().unwrap();
- std::fs::write(dir.path().join("some-file.txt"), b"content").unwrap();
- assert!(is_dir_non_empty(dir.path()));
- }
-
- #[test]
- fn test_empty_directory_accepted() {
- let dir = tempfile::tempdir().unwrap();
- assert!(!is_dir_non_empty(dir.path()));
- }
-
- #[test]
- fn test_self_version_replacement() {
- let mut raw = package::RawPackageData::new("vendor/pkg".to_string());
- raw.require
- .insert("vendor/dep-a".to_string(), "self.version".to_string());
- raw.require
- .insert("vendor/dep-b".to_string(), "^1.0".to_string());
- raw.require_dev
- .insert("vendor/dep-c".to_string(), "self.version".to_string());
- raw.conflict
- .insert("some/conflict".to_string(), "self.version".to_string());
- raw.provide
- .insert("some/provide".to_string(), "self.version".to_string());
- raw.replace
- .insert("some/replace".to_string(), "self.version".to_string());
-
- replace_self_version(&mut raw, "2.3.4");
-
- assert_eq!(raw.require.get("vendor/dep-a").unwrap(), "2.3.4");
- assert_eq!(raw.require.get("vendor/dep-b").unwrap(), "^1.0");
- assert_eq!(raw.require_dev.get("vendor/dep-c").unwrap(), "2.3.4");
- assert_eq!(raw.conflict.get("some/conflict").unwrap(), "2.3.4");
- assert_eq!(raw.provide.get("some/provide").unwrap(), "2.3.4");
- assert_eq!(raw.replace.get("some/replace").unwrap(), "2.3.4");
- }
-
- #[test]
- fn test_self_version_replacement_no_self_version() {
- let mut raw = package::RawPackageData::new("vendor/pkg".to_string());
- raw.require
- .insert("vendor/dep-a".to_string(), "^1.0".to_string());
-
- replace_self_version(&mut raw, "2.3.4");
-
- assert_eq!(raw.require.get("vendor/dep-a").unwrap(), "^1.0");
- }
-
- #[test]
- fn test_resolve_stability_explicit() {
- let (s, e) = resolve_stability(Some("dev"), None).unwrap();
- assert_eq!(s, "dev");
- assert_eq!(e, Stability::Dev);
-
- let (s, e) = resolve_stability(Some("RC"), None).unwrap();
- assert_eq!(s, "RC");
- assert_eq!(e, Stability::RC);
-
- // case-insensitive
- let (s, _) = resolve_stability(Some("BETA"), None).unwrap();
- assert_eq!(s, "beta");
- }
-
- #[test]
- fn test_resolve_stability_invalid() {
- let err = resolve_stability(Some("garbage"), None).unwrap_err();
- let msg = format!("{err}");
- assert!(msg.contains("Invalid stability provided (garbage)"));
- assert!(msg.contains("must be one of"));
- }
-
- #[test]
- fn test_resolve_stability_default() {
- let (s, e) = resolve_stability(None, None).unwrap();
- assert_eq!(s, "stable");
- assert_eq!(e, Stability::Stable);
- }
-
- #[test]
- fn test_resolve_stability_from_at_suffix() {
- let (s, e) = resolve_stability(None, Some("^2.0@beta")).unwrap();
- assert_eq!(s, "beta");
- assert_eq!(e, Stability::Beta);
-
- let (s, _) = resolve_stability(None, Some("1.0.0@dev")).unwrap();
- assert_eq!(s, "dev");
- }
-
- #[test]
- fn test_resolve_stability_from_version_suffix() {
- let (s, _) = resolve_stability(None, Some("1.0.0-beta1")).unwrap();
- assert_eq!(s, "beta");
- let (s, _) = resolve_stability(None, Some("dev-master")).unwrap();
- assert_eq!(s, "dev");
- let (s, _) = resolve_stability(None, Some("1.0.0")).unwrap();
- assert_eq!(s, "stable");
- }
-
- #[test]
- fn test_version_satisfies_constraint_via_semver() {
- assert!(version_satisfies_constraint("1.2.0", "^1.0"));
- assert!(version_satisfies_constraint("1.9.9", "^1.0"));
- assert!(!version_satisfies_constraint("2.0.0", "^1.0"));
- assert!(!version_satisfies_constraint("0.9.0", "^1.0"));
-
- assert!(version_satisfies_constraint("1.2.3", "1.2.3"));
- assert!(!version_satisfies_constraint("1.2.4", "1.2.3"));
-
- assert!(version_satisfies_constraint("1.2.0", ">=1.0.0"));
- assert!(version_satisfies_constraint("2.0.0", ">=1.0.0"));
- assert!(!version_satisfies_constraint("0.9.0", ">=1.0.0"));
-
- // Stability flag attached to the constraint should not break parsing.
- assert!(version_satisfies_constraint("2.0.0", "^2.0@beta"));
- }
-
- #[test]
- fn test_shortest_path_inside_cwd() {
- let cwd = PathBuf::from("/home/me/projects");
- let dir = cwd.join("foo");
- assert_eq!(shortest_path(&cwd, &dir), "foo");
- }
-
- #[test]
- fn test_shortest_path_outside_cwd() {
- let cwd = PathBuf::from("/home/me/projects");
- let dir = PathBuf::from("/elsewhere/bar");
- assert_eq!(shortest_path(&cwd, &dir), "/elsewhere/bar");
- }
-}