-
Notifications
You must be signed in to change notification settings - Fork 52
Testing
The libfsntfs package comes with automated tests, which are stored in the sub directory: tests.
To run the automated tests:
make check
The automated tests are currently only intended to run on a system that can run a bash shell.
There are also multiple test profiles:
- libfsntfs
- pyfsntfs
- fsntfsinfo
- fsntfsinfo_fs
- fsntfsinfo_mft
- fsntfsinfo_usn
These test profiles are used by one or more tests. By default the tests run all the test sets, if applicable. Each test profile can define which test sets to ignore in the ignore-file, e.g. for the libfsntfs test profile:
tests/input/.libfsntfs/ignore
Every line of the ignore-file specifies (the sub directory name of) the test set that should be ignored, e.g. for the basic test set:
basic
Some of the tests store data in the test profile to be used for comparison in successive test runs. At the moment this data needs to be cleaned out manual if it causes the test to fail due to legitimate changes.
The tests can also be run with valgrind to detect memory leakage.
Running the automated tests with valgrind will significantly impact the speed at which they are run.
To run the automated tests with valgrind:
make check CHECK_WITH_VALGRIND=1;
If the automated test process detects memory leaks it will end the specific test and indicate it failed.