1
0
mirror of https://github.com/BurntSushi/ripgrep.git synced 2025-08-04 21:52:54 +02:00

Fix bug reading root symlink.

When give an explicit file path on the command line like `foo` where `foo`
is a symlink, ripgrep should follow it even if `-L` isn't set. This is
consistent with the behavior of `foo/`.

Fixes #256
This commit is contained in:
Andrew Gallant
2016-12-05 20:05:57 -05:00
parent 160f04894f
commit 7282706b42
3 changed files with 48 additions and 37 deletions

View File

@ -945,6 +945,29 @@ clean!(regression_251, "привет", ".", |wd: WorkDir, mut cmd: Command| {
assert_eq!(lines, "foo:привет\nfoo:Привет\nfoo:ПрИвЕт\n");
});
// See: https://github.com/BurntSushi/ripgrep/issues/256
#[cfg(not(windows))]
clean!(regression_256, "test", "foo", |wd: WorkDir, mut cmd: Command| {
wd.create_dir("bar");
wd.create("bar/baz", "test");
wd.link_dir("bar", "foo");
let lines: String = wd.stdout(&mut cmd);
assert_eq!(lines, "foo/baz:test\n");
});
// See: https://github.com/BurntSushi/ripgrep/issues/256
#[cfg(not(windows))]
clean!(regression_256_j1, "test", "foo", |wd: WorkDir, mut cmd: Command| {
wd.create_dir("bar");
wd.create("bar/baz", "test");
wd.link_dir("bar", "foo");
cmd.arg("-j1");
let lines: String = wd.stdout(&mut cmd);
assert_eq!(lines, "foo/baz:test\n");
});
// See: https://github.com/BurntSushi/ripgrep/issues/7
sherlock!(feature_7, "-fpat", "sherlock", |wd: WorkDir, mut cmd: Command| {
wd.create("pat", "Sherlock\nHolmes");