| extern crate semver; |
| extern crate crates_index; |
| extern crate tempdir; |
| |
| // This test checks to see if every existing crate parses successfully. Important to not break the |
| // Rust universe! |
| |
| #[cfg(feature = "ci")] |
| #[test] |
| fn test_regressions() { |
| use tempdir::TempDir; |
| use crates_index::Index; |
| use semver::Version; |
| |
| let dir = TempDir::new("semver").unwrap(); |
| let index = Index::new(dir.into_path()); |
| index.clone().unwrap(); |
| |
| for krate in index.crates() { |
| for version in krate.versions() { |
| let v = version.version(); |
| assert!(Version::parse(v).is_ok(), "failed: {} ({})", version.name(), v); |
| } |
| } |
| } |