mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2025-07-31 04:02:00 -07:00
tests: re-tool integration tests
This basically rewrites every integration test. We reduce the amount of magic involved here in terms of which arguments are being passed to ripgrep processes. To make up for the boiler plate saved by the magic, we make the Dir (formerly WorkDir) type a bit nicer to use, along with a new TestCommand that wraps a std::process::Command. In exchange, we get tests that are easier to read and write. We also run every test with the `--pcre2` flag to make sure that works, when PCRE2 is available.
This commit is contained in:
21
tests/hay.rs
21
tests/hay.rs
@@ -7,18 +7,11 @@ but Doctor Watson has to have it taken out for him and dusted,
|
||||
and exhibited clearly, with a label attached.
|
||||
";
|
||||
|
||||
pub const CODE: &'static str = "\
|
||||
extern crate snap;
|
||||
|
||||
use std::io;
|
||||
|
||||
fn main() {
|
||||
let stdin = io::stdin();
|
||||
let stdout = io::stdout();
|
||||
|
||||
// Wrap the stdin reader in a Snappy reader.
|
||||
let mut rdr = snap::Reader::new(stdin.lock());
|
||||
let mut wtr = stdout.lock();
|
||||
io::copy(&mut rdr, &mut wtr).expect(\"I/O operation failed\");
|
||||
}
|
||||
pub const SHERLOCK_CRLF: &'static str = "\
|
||||
For the Doctor Watsons of this world, as opposed to the Sherlock\r
|
||||
Holmeses, success in the province of detective work must always\r
|
||||
be, to a very large extent, the result of luck. Sherlock Holmes\r
|
||||
can extract a clew from a wisp of straw or a flake of cigar ash;\r
|
||||
but Doctor Watson has to have it taken out for him and dusted,\r
|
||||
and exhibited clearly, with a label attached.\r
|
||||
";
|
||||
|
Reference in New Issue
Block a user