Running Tests
Basic Smoke Test
After a build and install it’s recommended to perform a quick smoke test with Spheral to see if the Spheral environment was installed and all of the libraries were built and linked together correctly.
From your install directory run:
./spheral -c "import Spheral"
This will run the Spheral Python process and try importing the Spheral modules. If successful you should see a banner printed with information about the version of Spheral, after which Python exits.
ATS Testing Suite
Spheral uses ATS to execute a suite of parallel tests. To run this on an external system we need to use Spheral’s virtual-env installation of ATS, as external users will not have access to some LC available scripts.
From the install directory run:
./.venv/bin/ats -e spheral tests/integration.ats
ATS Filters and Options
Appropriate filters are injected into the spheral-atstest script based on build configurations. However if you are using ats directly or wish to override some of these filters you can pass them as defined below.
Non MPI Filter
If Spheral was built without MPI
support we will need to pass a filter to our ats
command to prevent parallel tests from being performed:
--filter='"np<2"'
This stops the ATS suite from attempting to run any tests that rely on more than one process/rank.
Debug Build Filter
If Spheral was built in Debug mode it is recommended to pass the below filter if you value your time.
--filter='"level<100"'
These filters stack when invoked. So if you are running the test suite on a non-mpi debug build the command would be:
./.venv/bin/ats -e spheral tests/integration.ats --filter='"np<2"' --filter='"level<100"'