Eventually, we might envisage functional testing as some reusable tool.
But before that, I think we'll benefit from having a clearer separation between the two
I'd propose something like this:
- Move the tests outside of the main module.
- Each test will then start with something like "import functional_testing",
- then define a class that implements an interface
class MyTest(functional_testing.Test),
- then have some methods that return a predetermined type.
- These methods of course can use shared utility functions e.g.
functional_testing.do_common_thing(...)
- Move the list of tests outside of the main module.
- Move part of the thing that knows how to store stuff outside of the main module (<-- this idea needs a bit of work)
Then, at some point, we should see lots of commits to this "user-specific" directory, and very few to the main code, and then we can consider making a full split :D
The main benefit in the short run is that PINTS devs can just look in the "user-specific" directory and play around there, without having to navigate the more complex generic code
Eventually, we might envisage functional testing as some reusable tool.
But before that, I think we'll benefit from having a clearer separation between the two
I'd propose something like this:
class MyTest(functional_testing.Test),functional_testing.do_common_thing(...)Then, at some point, we should see lots of commits to this "user-specific" directory, and very few to the main code, and then we can consider making a full split :D
The main benefit in the short run is that PINTS devs can just look in the "user-specific" directory and play around there, without having to navigate the more complex generic code