-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test running compiled SINGE on macOS #54
Conversation
Do not need these files when working with compiled SINGE
I updated the This works in our Linux Travis CI test and the macOS GitHub Actions test. You can see in the script output that the correct OS is recognized:
I'll add a little more documentation, and then this will be ready for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should document somewhere whether the macOS sanity test compares against the test matrices and the final network. (There might be dependence on OS in the random number generation).
Currently this test does not compare the edge weights or gene scores against the reference data. It prints the gene scores in the build log for manual inspection. I can add the test cases before merging to assess any OS-specific behavior. That would be good for us to know about and alert users about. |
@atuldeshpande the macOS workflow now runs the script that compares the new generated output with the stored reference output. I also described what tests are run in the readme. The OS-specific differences are minor:
The gene and edge scores match up to 5 significant figures. However, some values in the individual adjacency matrices fail the Should we relax the test case? Or relax it only for the macOS test but leave it more stringent in Linux? |
I generalized the test script so that it can take an optional tolerance argument. The macOS test now uses a more permissive threshold, and the Linux test uses the defaults, which are more strict. All tests are passing. |
This pull request contains initial work to install and run SINGE on macOS. It uses GitHub Actions to avoid cluttering the Travis CI configuration further.
The main error is that the compiled MATLAB executables are not cross-platform. I added a note to the readme describing this (edd02a6). Running them on macOS gives the error:
./run_SINGE_GLG_Test.sh: line 30: ./SINGE_GLG_Test: cannot execute binary file
The solution would be to compile another version of the executables on macOS and host them alongside the Linux executables. In the meantime, macOS (and Windows) users can run SINGE through MATLAB if they have a MATLAB license or through Docker.