summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsharkdp <davidpeter@web.de>2017-06-15 15:46:43 +0200
committerDavid Peter <sharkdp@users.noreply.github.com>2017-06-15 16:12:11 +0200
commitd8d0cf5d6ec45dc6514782651952eef95cfef638 (patch)
tree178b1e441a2c1229a5fb20bc239d3534ca25f81b
parenteb728756ed51dda99baf384f8e3587537cefa535 (diff)
Modify test.sh for macOS, fixes #44
-rw-r--r--tests/test.sh81
1 files changed, 42 insertions, 39 deletions
diff --git a/tests/test.sh b/tests/test.sh
index 8d5274a..e50c920 100644
--- a/tests/test.sh
+++ b/tests/test.sh
@@ -28,7 +28,7 @@ expect() {
echo "$expected_output" > "$tmp_expected"
- "$fd" "$@" | sort > "$tmp_output"
+ "$fd" "$@" | sort -f > "$tmp_output"
echo -ne " ${bold}▶${reset} Testing 'fd $*' ... "
@@ -42,7 +42,7 @@ expect() {
echo -ne "\nShowing diff between ${red}expected${reset} and "
echo -e "${green}actual${reset} output:\n"
- diff -C3 --label expected --label actual --color \
+ diff -C3 --label expected --label actual \
"$tmp_expected" "$tmp_output" || true
rm -f "$tmp_expected" "$tmp_output"
@@ -62,7 +62,7 @@ mkdir -p one/two/three
touch a.foo
touch one/b.foo
touch one/two/c.foo
-touch one/two/C.Foo
+touch one/two/C.Foo2
touch one/two/three/d.foo
mkdir one/two/three/directory_foo
touch ignored.foo
@@ -81,7 +81,7 @@ expect "one/two/three/d.foo" d.foo
expect "a.foo
one/b.foo
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three/d.foo
one/two/three/directory_foo" foo
expect "a.foo
@@ -89,7 +89,7 @@ one
one/b.foo
one/two
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three
one/two/three/d.foo
one/two/three/directory_foo
@@ -98,7 +98,7 @@ symlink" # run 'fd' without arguments
suite "Explicit root path"
expect "one/b.foo
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three/d.foo
one/two/three/directory_foo" foo one
expect "one/two/three/d.foo
@@ -108,7 +108,7 @@ cd one/two
expect "../../a.foo
../b.foo
c.foo
-C.Foo
+C.Foo2
three/d.foo
three/directory_foo" foo ../../
)
@@ -117,7 +117,7 @@ suite "Regex searches"
expect "a.foo
one/b.foo
one/two/c.foo
-one/two/C.Foo" '[a-c].foo'
+one/two/C.Foo2" '[a-c].foo'
expect "a.foo
one/b.foo
one/two/c.foo" --case-sensitive '[a-c].foo'
@@ -126,14 +126,14 @@ one/two/c.foo" --case-sensitive '[a-c].foo'
suite "Smart case"
expect "one/two/c.foo
-one/two/C.Foo" c.foo
-expect "one/two/C.Foo" C.Foo
-expect "one/two/C.Foo" Foo
+one/two/C.Foo2" c.foo
+expect "one/two/C.Foo2" C.Foo
+expect "one/two/C.Foo2" Foo
suite "Case-sensitivity (--case-sensitive)"
expect "one/two/c.foo" --case-sensitive c.foo
-expect "one/two/C.Foo" --case-sensitive C.Foo
+expect "one/two/C.Foo2" --case-sensitive C.Foo
suite "Full path search (--full-path)"
@@ -143,11 +143,11 @@ expect "a.foo" --full-path '^a\.foo$'
suite "Hidden files (--hidden)"
-expect "a.foo
-.hidden.foo
+expect ".hidden.foo
+a.foo
one/b.foo
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three/d.foo
one/two/three/directory_foo" --hidden foo
@@ -157,25 +157,25 @@ expect "a.foo
ignored.foo
one/b.foo
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three/d.foo
one/two/three/directory_foo" --no-ignore foo
-expect "a.foo
-.hidden.foo
+expect ".hidden.foo
+a.foo
ignored.foo
one/b.foo
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three/d.foo
one/two/three/directory_foo" --hidden --no-ignore foo
suite "Symlinks (--follow)"
expect "one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
symlink/c.foo
-symlink/C.Foo" --follow c.foo
+symlink/C.Foo2" --follow c.foo
suite "Maximum depth (--max-depth)"
@@ -184,7 +184,7 @@ one
one/b.foo
one/two
one/two/c.foo
-one/two/C.Foo
+one/two/C.Foo2
one/two/three
symlink" --max-depth 3
expect "a.foo
@@ -196,25 +196,28 @@ expect "a.foo
one
symlink" --max-depth 1
+abs_path=$(python -c "import os; print(os.path.realpath('$root'))")
suite "Absolute paths (--absolute-path)"
-expect "$root/a.foo
-$root/one/b.foo
-$root/one/two/c.foo
-$root/one/two/C.Foo
-$root/one/two/three/d.foo
-$root/one/two/three/directory_foo" --absolute-path foo
-expect "$root/a.foo
-$root/one/b.foo
-$root/one/two/c.foo
-$root/one/two/C.Foo
-$root/one/two/three/d.foo
-$root/one/two/three/directory_foo" foo "$root"
-
-
-suite "Invalid UTF-8"
-touch "$(printf 'test-invalid-utf8-\xc3.txt')"
-expect "$(printf 'test-invalid-utf8-\ufffd.txt')" test-invalid-utf8
+expect "$abs_path/a.foo
+$abs_path/one/b.foo
+$abs_path/one/two/c.foo
+$abs_path/one/two/C.Foo2
+$abs_path/one/two/three/d.foo
+$abs_path/one/two/three/directory_foo" --absolute-path foo
+expect "$abs_path/a.foo
+$abs_path/one/b.foo
+$abs_path/one/two/c.foo
+$abs_path/one/two/C.Foo2
+$abs_path/one/two/three/d.foo
+$abs_path/one/two/three/directory_foo" foo "$abs_path"
+
+
+if [[ "$OSTYPE" == "linux-gnu" ]]; then
+ suite "Invalid UTF-8"
+ touch "$(printf 'test-invalid-utf8-\xc3.txt')"
+ expect "$(printf 'test-invalid-utf8-\ufffd.txt')" test-invalid-utf8
+fi
# All done
echo