]> git.proxmox.com Git - cargo.git/blobdiff - tests/internal.rs
d/make_orig_multi: don't use legacy GZIP env var
[cargo.git] / tests / internal.rs
index 2631d787381bd273e3d947e3ad81bb03296b70a3..c42cfa8f07b409e98c19acf46e6fd20354bcf05a 100644 (file)
@@ -1,16 +1,26 @@
 //! Tests for internal code checks.
+
+#![allow(clippy::all)]
+
 use std::fs;
 
 #[test]
 fn check_forbidden_code() {
     // Do not use certain macros, functions, etc.
-    if !cargo::util::is_ci() {
+    if !cargo_util::is_ci() {
         // Only check these on CI, otherwise it could be annoying.
+        use std::io::Write;
+        writeln!(
+            std::io::stderr(),
+            "\nSkipping check_forbidden_code test, set CI=1 to enable"
+        )
+        .unwrap();
         return;
     }
-    let path = std::path::Path::new(env!("CARGO_MANIFEST_DIR")).join("src");
-    for entry in walkdir::WalkDir::new(path)
+    let root_path = std::path::Path::new(env!("CARGO_MANIFEST_DIR")).join("src");
+    for entry in walkdir::WalkDir::new(&root_path)
         .into_iter()
+        .filter_entry(|e| e.path() != root_path.join("doc"))
         .filter_map(|e| e.ok())
     {
         let path = entry.path();
@@ -22,8 +32,12 @@ fn check_forbidden_code() {
         {
             continue;
         }
+        eprintln!("checking {}", path.display());
         let c = fs::read_to_string(path).unwrap();
         for (line_index, line) in c.lines().enumerate() {
+            if line.trim().starts_with("//") {
+                continue;
+            }
             if line_has_print(line) {
                 if entry.file_name().to_str().unwrap() == "cargo_new.rs" && line.contains("Hello") {
                     // An exception.