Comments (12)
Thoughts on using the MDAnalysisTests package for testing real PSF/DCDs?
from mdsynthesis.
Good idea, since it saves us having to package our own. I'll add MDAnalysisTests as a dependency for the tests on Travis. Will add this to the docs as well.
from mdsynthesis.
Hey David, is this still open?
from mdsynthesis.
It is. I've been hammering on #16 and #8 over the past few weeks (see 8d11c58 on the member_aggs branch; required some overhauls, and still working on it), so haven't spent much time on improving this one.
The Container
API has enough tests for now, but neither Sim
nor Group
have tests for their unique components (universes and selections; members). If you're interested in adding some, I'd suggest working from here. This is one of the issues holding back a first release, so any help would certainly speed things along!
from mdsynthesis.
Ok I'll have a go, I had a read of the current tests, pytest looks very cool to use!
Have you looked at including coverage in your CI? It took me maybe 5 lines and 1 website signup to get it working on MDAnalysis
richardjgowers/mdanalysis@9fb0869
from mdsynthesis.
Ok I'll have a go, I had a read of the current tests, pytest looks very cool to use!
Thanks! Yeah, its implementation of fixtures takes a little getting used to, but it makes writing tests for large varieties of inputs, including permutations, a bit less painful. The tests for data storage and retrieval are a good example.
I'm trying out codecov for test coverage. Just updated the development branch with the appropriate includes in .travis.yml. In addition to coverage, I also added pep8 checks to the test execution line, and this spat out a whole slew of violations. cracks knuckles
from mdsynthesis.
The good news is that we so far have 42% test coverage according to pytest. Once we have coverage of Sim- and Group-specific elements, this will probably rise to over 70%.
from mdsynthesis.
Make that 47% test coverage after I removed some old unused code. Beyond code coverage, however, we'll also need stress tests of file locking mechanisms for both state files and data. The tricky part with those is that they'll require tests using multiprocessing, and I'm not sure if/how that's done with pytest. It's a separate issue (#22), however.
from mdsynthesis.
We're now up to 62% test coverage. I merged the major changes I made to how Group
works underneath the hood into master, and along with this were some changes to both the Sim
and Group
state file schema. As such, old Sim
and Group
state files won't work anymore; I worked a bit on building a conversion script, but I wasn't sure it was worth the time. In the future, changes to schema will only occur across major releases, and we'll have code built into these Containers to handle updating their schema internally based on stored version numbers.
There's still Sim.selections
to test, along with the features of Bundle
(new!). I'll be working to close the gaps in the coming days.
from mdsynthesis.
I think the easiest jump in coverage looks like core/aggregators, so I'll make some for them.
from mdsynthesis.
Moving this to 0.5.1; quite a bit of progress has been made, and the gaps will be filled in there.
from mdsynthesis.
This is pretty well done. There may be some cracks yet, but they're not really hiding out in Sims and Groups.
from mdsynthesis.
Related Issues (20)
- Failing in adding a Universe creates bad state HOT 2
- failed to store DataFrame with column multi-index HOT 4
- One Sim, one Universe: remove multiple Universes functionality HOT 15
- first release HOT 12
- Setting Sim.universe to universe with chain reader doesn't work HOT 1
- Support auxilliaries in Universe definitions HOT 3
- create sim from existing Treant HOT 4
- handle folders with several simulations HOT 2
- The current release doesn't work with MDAnalysis 0.16.0dev HOT 3
- make a 1.0 release? HOT 11
- Remove Sim treanttype HOT 3
- Move to MDAnalysis org HOT 9
- Removing all tags/categories HOT 2
- python 3 release? HOT 3
- add conversion script from 0.8 to 1.0 HOT 3
- Error when using sim.tags/sim.categories HOT 3
- So much faster! HOT 1
- Is it possible to store in data or somewhere else files or paths to them? HOT 8
- Two different documentations online? HOT 1
- Order of Treants in a Bundle HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mdsynthesis.