-
Notifications
You must be signed in to change notification settings - Fork 33
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
Re-organisation/tidying of functional tests submodule #1386
Re-organisation/tidying of functional tests submodule #1386
Conversation
…thods they test (underscores instead of camelcase).
…n be called as e.g. 'differential_evaluation_mcmc.two_dim_gaussian()'.
Hi functional testers @ben18785 @fcooper8472 @chonlei @DavAug @rcw5890 and anyone I'm forgetting, I've done a proposal to make the stuff we've been adding here a bit more streamlined and usable. Changes are listed above. Due to a naming change, the diff shows up as old fine gone, new file added, sorry about that. Please let me know what you think! |
I think this is still all in line with @fcooper8472 's original design: pints-team/change-point-testing#38 Although I think the updated plan was to have functional tests live somewhere outside PINTS. One solution would be to have:
That fits with the idea that you make the pre-merge test first, then use that to create the functional test, and then re-use it if the functional test ever fails. Not sure how the method-merge-tests get access to unmerged new methods though (that's a problem with the current set-up too)? |
If there was an updated plan to have the functional testing methods themselves outside PINTS then I don't think I was involved in that conversation. The existing structure was the result of the most recent decision that I'm aware of. The changes in this PR look fine to me, although I haven't looked at any of the changes in individual files because, as you say, the diffs are all obscured due to renaming. |
Thanks!
I just meant your updated ideas here: pints-team/change-point-testing#38 (comment) Although reading that more carefully I'm not sure what you mean there 😅 I'm happy to keep the functional tests in PINTS! |
I think the plan was to have the methods themselves in PINTS, but the script that handles the automated running of those methods and the storing/processing of the data (the "functional testing" infrastructure) would live in another repo. |
Gotcha! If we're doing that, I wouldn't mind having the method merge tests in the |
@ben18785 can you have a quick look at this one? Hoping to merge this soon so that it doesn't keep going out of date |
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.
Thanks @MichaelClerx -- I've been through and checked things (mostly that the number of iterations, warmup and chains match) and looks good. Given that these things are part of PINTS, how should we handle the Jupyter notebooks in the method-merge-tests repo? Do they need a particular PINTS commit associated with them somewhere?
Thanks @ben18785 ! I think we can just update those whenever we need to run them? There shouldn't be many (further) updates to this code anyway, I think |
I'll merge this in tomorrow and update the method merge tests |
Hi all,
This is a proposal for a slight re-organisation of the functional tests.
Main changes:
functionaltests
, so you can do e.g.import pints.functionaltests.ft
,ft.TestMethodOn...
ft.dream_mcmc.two_dim_gaussian()
Test discovery example: