vanvalenlab / deepcell-tracking

Track cells and build cell lineages
Other
27 stars 6 forks source link

Randomness in tests cause fluctuations in coverage. #47

Open willgraf opened 3 years ago

willgraf commented 3 years ago

Now that we are running tests on several Python + OS combinations, we can see that there are some random fluctuations in test results. I've identified several cases where some conditions are not run, though there may be others:

The tests should be amended to directly cause these situations and assert that they are removed from the output.

willgraf commented 3 years ago

53 has addressed some of the issues above, but as discussed in the PR there are several important blocks of code that are untested.

Copied below for convenience:


That said, there are a few critical pieces of the code that are currently untested:

  • deepcell_tracking.utils.Track is missing tests for assigning both same and daughter in temporal_adj_matrix as well as the invalid (-1) values.
  • deepcell_tracking.tracking.CellTracker is missing several important tests:
    • The entire block of _update_tracks that handles new division events
    • The block of _get_parent that assigns parents
    • The handling of parents in _track_to_graph.
    • False Positive logic in postprocess and _review_candidate_nodes
    • The entirety of _remove_false_pos is untested.
  • deepcell_tracking.isbi_utils.benchmark_division_performance is untested.