Skip to content

Commit

Permalink
Fix CI by downgrading to cargo insta 1.29.0 (#5589)
Browse files Browse the repository at this point in the history
Since the (implicit) update to cargo-insta 1.30, CI would pass even when
the tests failed. This downgrades to cargo insta 1.29.0 and CI fails
again when it should (which i can't show here, because CI needs to pass
to merge this PR). I've improved the unreferenced snapshot handling in
the process

See mitsuhiko/insta#392
  • Loading branch information
konstin committed Jul 8, 2023
1 parent efe7c39 commit d0dae7e
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 16 deletions.
14 changes: 6 additions & 8 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,21 +54,19 @@ jobs:
- name: "Install Rust toolchain"
run: rustup show
- uses: Swatinem/rust-cache@v2
- run: cargo install cargo-insta
# cargo insta 1.30.0 fails for some reason (https://github.com/mitsuhiko/insta/issues/392)
- run: cargo install cargo-insta@=1.29.0
- run: pip install black[d]==23.1.0
- name: "Run tests (Ubuntu)"
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
cargo insta test --all --all-features --delete-unreferenced-snapshots
git diff --exit-code
run: cargo insta test --all --all-features --unreferenced reject
- name: "Run tests (Windows)"
if: ${{ matrix.os == 'windows-latest' }}
shell: bash
run: |
cargo insta test --all --all-features
git diff --exit-code
# We can't reject unreferenced snapshots on windows because flake8_executable can't run on windows
run: cargo insta test --all --all-features
- run: cargo test --package ruff_cli --test black_compatibility_test -- --ignored
# Skipped as it's currently broken. The resource were moved from the
# TODO: Skipped as it's currently broken. The resource were moved from the
# ruff_cli to ruff crate, but this test was not updated.
if: false
# Check for broken links in the documentation.
Expand Down
25 changes: 17 additions & 8 deletions crates/ruff_python_resolver/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ mod search;

#[cfg(test)]
mod tests {
use insta::assert_debug_snapshot;
use std::fs::{create_dir_all, File};
use std::io::{self, Write};
use std::path::{Path, PathBuf};
Expand Down Expand Up @@ -129,6 +128,16 @@ mod tests {
env_logger::builder().is_test(true).try_init().ok();
}

macro_rules! assert_debug_snapshot_normalize_paths {
($value: ident) => {{
// The debug representation for the backslash are two backslashes (escaping)
let $value = std::format!("{:#?}", $value).replace("\\\\", "/");
// `insta::assert_snapshot` uses the debug representation of the string, which would
// be a single line containing `\n`
insta::assert_display_snapshot!($value);
}};
}

#[test]
fn partial_stub_file_exists() -> io::Result<()> {
setup();
Expand Down Expand Up @@ -810,7 +819,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -831,7 +840,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -852,7 +861,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -873,7 +882,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -894,7 +903,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -915,7 +924,7 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}

#[test]
Expand All @@ -936,6 +945,6 @@ mod tests {
},
);

assert_debug_snapshot!(result);
assert_debug_snapshot_normalize_paths!(result);
}
}
1 change: 1 addition & 0 deletions ruff.schema.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit d0dae7e

Please sign in to comment.