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
Tox support for cross-versions testing #960
Conversation
Yep 👍 |
Can you please add Django 1.8 as well? |
Maybe we should run the tests using tox in Travis as well? |
I will look into it but last time I saw some project matching travis builds to tox builds it was a little bit complex. Maybe I should send another pull-request later allowing to merge and benefit from tox right now. |
LGTM. |
6 similar comments
tox ftw 👍 |
Might be helpful for travis: https://www.dominicrodger.com/tox-and-travis.html |
Yes, I have a start of Tox/Travis coupling implementation but some features will be lost:
If everyone is ok with these change, I will submit this as new pull-request for Travis coupling as soon as this one is merged (I don't want to break TravisCI build in this one) |
You can run the benchmarks on a different tox job regardless of the tests. |
Also, you can run all tox jobs with coverage. |
Yep, forcing coverage on all jobs this is the alternative. About benchmarks, I can create a tox job for this, but I don't think TravisCI is the place to run them. |
If you're already touching a bit the Travis configuration, you may edit it to remove the benchmark from the pypy3 tests, since they are now the only reason for failure under pypy3, like in the output below python benchmark.py Benchmarking...Creating 10000 dictionaries - Pymongo 5.754539966583252Creating 10000 dictionaries - Pymongo write_concern={"w": 0} 4.454897165298462Creating 10000 dictionaries - MongoEngine |
6 similar comments
1 similar comment
@noirbizarre You should remove Django from the matrix and think about adding in PyMongo==dev instead. Then it looks like this should be ready to go once #973 is merged. |
@noirbizarre It looks like #946 might take a bit more time, as it sounds like @MRigal (get well soon!) is going to be unavailable for some time and there are still some outstanding issues. How about we remove Django from the matrix and commit? We can add in newer pymongo support in the matrix as part of #946 once it gets closer to acceptance. |
…s argument, documenting it in the readme
Done: |
Awesome! We really appreciate your work on this. It will go a long way in helping with test coverage and code quality assurance! I will merge in the PR once Travis-CI gets caught up. |
I find tox be one of the more helpful tool when providing cross-version compatibility on a library so it's often one of the first pull-request I do. |
Tox support for cross-versions testing
Use tox for multiversion testing, same as MongoEngine/mongoengine#960
Mongoengine is tested on different PyMongo versions, different Python versions...
This pull-request add a
tox.ini
file allowing to run the test suite on every supported version composition .This allow to do proper testing before submitting pull-requests without having to wait for TravisCI cross-versions testing.
To run the test in tox, simply run:
It will create a virtualenv for each combination and run the same test suite (like TravisCI).