fix: exit early when the filtered filelist is empty
Also, the Python manual at
https://docs.python.org/3/library/constants.html#exit says not to use `exit()`
is scripts:
The site module (which is imported automatically during startup, except if
the -S command-line option is given) adds several constants to the built-in
namespace. They are useful for the interactive interpreter shell and should
not be used in programs.
I really cannot tell the behaviour difference between exit() and sys.exit(),
but let's use the recommended sys.exit() anyway.
And let's generate small data files in the test cases themselves instead of
needing to add them to the data directory.