this dramatically improves time to run `cargo test -p codex-core` (~25x speedup). before: ``` cargo test -p codex-core 35.96s user 68.63s system 19% cpu 8:49.80 total ``` after: ``` cargo test -p codex-core 5.51s user 8.16s system 63% cpu 21.407 total ``` both tests measured "hot", i.e. on a 2nd run with no filesystem changes, to exclude compile times. approach inspired by [Delete Cargo Integration Tests](https://matklad.github.io/2021/02/27/delete-cargo-integration-tests.html), we move all test cases in tests/ into a single suite in order to have a single binary, as there is significant overhead for each test binary executed, and because test execution is only parallelized with a single binary.
24 lines
545 B
Rust
24 lines
545 B
Rust
use codex_execpolicy::Error;
|
|
use codex_execpolicy::parse_sed_command;
|
|
|
|
#[test]
|
|
fn parses_simple_print_command() {
|
|
assert_eq!(parse_sed_command("122,202p"), Ok(()));
|
|
}
|
|
|
|
#[test]
|
|
fn rejects_malformed_print_command() {
|
|
assert_eq!(
|
|
parse_sed_command("122,202"),
|
|
Err(Error::SedCommandNotProvablySafe {
|
|
command: "122,202".to_string(),
|
|
})
|
|
);
|
|
assert_eq!(
|
|
parse_sed_command("122202"),
|
|
Err(Error::SedCommandNotProvablySafe {
|
|
command: "122202".to_string(),
|
|
})
|
|
);
|
|
}
|