diff options
author | Tavian Barnes <tavianator@tavianator.com> | 2017-09-16 16:41:37 -0400 |
---|---|---|
committer | Tavian Barnes <tavianator@tavianator.com> | 2017-09-16 16:57:01 -0400 |
commit | 511d6fe676056a72f58daa7307267603f42003f3 (patch) | |
tree | 54323107abe5fc9b750c18dbf67262f0e353d87b /tests.sh | |
parent | 69a5f09e1fa0cd85bf5cd90342856ef175b40a25 (diff) | |
download | bfs-511d6fe676056a72f58daa7307267603f42003f3.tar.xz |
tests: Add tests that trigger some optimizations
Diffstat (limited to 'tests.sh')
-rwxr-xr-x | tests.sh | 40 |
1 files changed, 40 insertions, 0 deletions
@@ -208,6 +208,12 @@ posix_tests=( test_a test_o test_deep + test_double_negation + test_not_reachability + test_de_morgan_not + test_de_morgan_and + test_de_morgan_or + test_data_flow_type ) bsd_tests=( @@ -270,6 +276,7 @@ bsd_tests=( test_nouser test_exit test_printx + test_data_flow_depth ) gnu_tests=( @@ -367,6 +374,7 @@ gnu_tests=( test_precedence test_and_purity test_or_purity + test_comma_reachability ) bfs_tests=( @@ -1365,6 +1373,38 @@ function test_or_purity() { bfs_diff basic -name '*' -o -print } +function test_double_negation() { + bfs_diff basic \! \! -name 'foo' +} + +function test_not_reachability() { + bfs_diff basic -print \! -quit -print +} + +function test_comma_reachability() { + bfs_diff basic -print -quit , -print +} + +function test_de_morgan_not() { + bfs_diff basic \! \( -name 'foo' -o \! -type f \) +} + +function test_de_morgan_and() { + bfs_diff basic \( \! -name 'foo' -a \! -type f \) +} + +function test_de_morgan_or() { + bfs_diff basic \( \! -name 'foo' -o \! -type f \) +} + +function test_data_flow_depth() { + bfs_diff basic -depth +1 -depth -4 +} + +function test_data_flow_type() { + bfs_diff basic \! \( -type f -o \! -type f \) +} + if [ -t 1 -a ! "$VERBOSE" ]; then in_place=yes fi |