primaryodors / primarydock

PrimaryOdors.org molecular docker.
Other
6 stars 4 forks source link

Create Master and Express unit tests. #257

Closed primaryodors closed 1 year ago

primaryodors commented 1 year ago

It would appear that the Big Three on their own are not a sufficient test for each PR before merge. The ideal would be to have a master unit test that can be left running (overnight, if necessary) before merging, and a subset unit test of the most easily breakable things, that can be run periodically during development.

Originally posted by @primaryodors in https://github.com/primaryodors/primarydock/issues/254#issuecomment-1566171331

Let's create some kind of Master unit test that not only checks the Big Three, but also checks:

The Master unit test will be required for all PRs before merge, unless the PR does not affect any of the calculations in the classes, apps, or tests. E.g. a simple UI change would not require the Master test.

Let's also create an Express unit test containing only the most easily broken features, designed to not take more than a minute or two. (Details TBD.)

Importantly, the new unit tests would not stop once an error is reached, but would instead test each item in sequence and report a pass/fail for each item, then error out only at the end if one or more items failed.

PRs marked ready for review before the new tests are merged in, will not be held up by the new requirements. In other words, what's currently in review can proceed to approval and merge without having to wait for the unit tests to be finished.

electronicsbyjulie commented 1 year ago

We can add metal coordination to the test. #254 broke metallic interactions; #261 has a fix.

primaryodors commented 1 year ago

Let's resume these unit tests next; having them written and working will make it immensely easier to maintain the codebase and minimize bugs.