ATM icon indicating copy to clipboard operation
ATM copied to clipboard

Add minimal unit tests

Open bcyphers opened this issue 6 years ago • 4 comments

Right now there are just a couple of actual tests in the test/ folder, and they leave huge portions of the code untouched.

Eventually, we will need a suite of unit tests and comprehensive integration tests that reasonably convince us that a new change won't break anything. We'll also want to integrate with CircleCI and github so that we can evaluate pull requests from the web (but that will come later).

I'll try to update this issue with our progress as time goes on, but a good start would be unit tests for:

  • each hyperpartition for each classification method
  • each database.py create/query/update function
  • hyperpartition enumeration
  • hyperpartition selection/parameter tuning
  • metric computation in metrics.py
  • data loading and encoding with a variety of quirky data types
  • serialization/deserialization of models/metrics objects

bcyphers avatar Dec 24 '17 23:12 bcyphers

On second thought, maybe we should get CircleCI up and running first with the couple of tests we do have.

bcyphers avatar Jan 02 '18 16:01 bcyphers

Hey guys, I want to Help with the unit tests. Which one is the easiest class to start??

takabayashi avatar Feb 27 '18 01:02 takabayashi

Hey @takabayashi, thanks for your interest in helping. The metrics are pretty self contained and could be a good place to start. The database functionality is straightforward if you can get the mocking done properly. And the utilities have a variety of isolated functions that could be tested.

micahjsmith avatar Feb 19 '19 20:02 micahjsmith

Ok great I will try to build the environment, any problem I'II post here...thanks!

takabayashi avatar Feb 21 '19 03:02 takabayashi