I'm using coverage.py to measure the code coverage of my tests. I've enabled branch coverage, but I can't quite make sense of the report.
Without branch coverage, I get 100% coverage:
Name Stmts Miss Cover Missing
------------------------------------------------------------
mylib/queries.py 44 0 100%
With branch coverage enabled:
Name Stmts Miss Branch BrPart Cover Missing
--------------------------------------------------------------------------
mylib/queries.py 44 1 20 3 94% 55, 21->10, 53->-48, 59->-58
The source in question can be found here.
21->10 makes sense; the if clause never evaluates to False (jumping back to the beginning of the outer for loop).
However, 53->-48 and 59->-58 have me scratching my head. What do they mean?