-
Notifications
You must be signed in to change notification settings - Fork 19
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
Use runtest library for testing; fixes #28, fixes #80 #82
Conversation
This is quite a monster change set so take time with review. Also @mariavd should have a say since this PR nukes her scripts. Sorry :-) but hopefully this change makes sense. |
OK please wait with integrating it - some tests fail on Travis so I need to look at them. But we can still discuss the code changes until I restore the tests also on Travis. I think this is due to numerical tolerance but I need to verify. |
I am travelling home today, I'll see the changes tomorrow.
Best regards,
Maria
|
Thanks for the initiative, Radovan! Perhaps we should first clone your feature branch and test? |
Done some more debugging. The problem is not tolerance. There seems to be some subtle problem since the output called "stdout" cannot be found on Travis. |
What I personally find a bit annoying is that GIMIC writes output to stdout instead of writing it into a file. This complicates my testing and is I think also the reason for issues on Travis. |
And I forgot to answer a question: of course you are welcome to try out my fork/branch directly. I trust that all works fine. Only on Travis it doesn't and I need to figure out why. |
Thanks Radovan. I think the stdout out thing is useful for the dryrun option. It is convenient for a user. |
Travis tests are important for us. We can remove the stdout and put everything into the gimic.out file. Would that be a solution? To me it sounds simple and fast. |
I completely agree. |
OK I will continue debugging since I still don't fully understand why it fails. I will write as soon as I know more. |
Fixed a couple of bugs. Now it's all good and ready to go but of course you still may want to review it. |
Crap - now it's conflicting. Will submit a fix in a moment. |
As far as I can see it things are fine. It is more important to proceed instead of investing too much time in Travis. Testing can always be changed or adapted. We have more important issues on the desk. |
Conflicts: src/CMakeLists.txt
It works now on Travis. Fixed the conflict. It should be all fine. |
Perfect! Thank you! |
And about the issues on the desk: they are impossible to do if we don't have a good testing framework - this is why I spend so much energy into getting the testing and benchmarks in shape. |
I know Radovan. My point was when testing works we should not optimize the testing but rather the code. Thanks for your efforts! |
Is the new testing supposed to be used as This is what I got on a cluster:
Going to the test directory and calling gimic with the input files works fine. |
Yes. It is expected to work with either |
Right, so
How can I add it without messing up the system python (and not go through the mess of virtual environments, they are not a solution in my opinion)? Or should I use Anaconda? |
You need to install it :-) I think you have an outdated virtual environment. See |
Why is venv a mess? IMO system python is almost always not the solution. |
Next time let us please not discuss on a closed PR - the risk is that I miss such a discussion. Next time please new issue. But now we continue here until this is resolved. Venv is the way to go. But of course I want to help with problems concerning venvs. |
@bast Alright, I will start a new issue next time. My illiteracy in Python is speaking here. What I mean to ask is, is it safe to use pip install runtest for the system python? And when is that not a good idea? Not long ago I updated Cython for the system python on our cluster using |
It's probably safe but I would never install any Python packages system-wide with the only exception of installing virtualenv. Everything else I always install into a venv. What is not clear or not working about venv? |
@bast Thanks, I sorted out the virtual environment and all tests passed. |
Nice! |
Here we switch to https://github.com/bast/runtest for testing.
Motivation:
make test
no temporary files are generated outside build directory