Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
So ... I updated the docs and added a couple of tests.
However, your email said "...a test that should fail to find something because it's an executable in that fallback mode..." and that caused a bit of confusion because that's not what exe => 0 does apparently. From what I can see, exe => 1 will only return results that are executable, but exe => 0 will return results whether they are executable or not. Your email would imply that this is a bug.
But, another way to look at things is that exe => 1 could mean "test that the file is executable" and dir => 1 could mean "test that the 'file' is a directory", while the => 0 versions of those mean "don't perform this test". My reading of the existing docs jibes with this interpretation. However, this would mean that dir => 0 currently has a bug. [As an aside, under this interpretation, you actually could have both exe => 1 and dir => 1 rather than croak as you do now]
Either way I think there's a bug somewhere and that the docs need to be updated to clearly reflect whichever interpretation is correct.
If you open an RT or github issue with guidance on which way you want to go, I'll fix it :-)