marbles itself is fairly comprehensively tested, in terms of lines and also features, but we don't very well test how marbles interacts with all of the features of unittest. For example, some of the assertions we're wrapping in marbles may behave strangely depending on how we've wrapped them (we've seen problems before where things like assertMultiLineEqual don't faithfully pass the msg argument to all assertions they then make, which broke our annotations, but only when that method got called with something that wasn't a str).
We should try to test marbles against all assertions in unittest, possibly by running unittest's own test harnesses. We may also want to test interactions between marbles and other features of unittest, but let's start there.
marblesitself is fairly comprehensively tested, in terms of lines and also features, but we don't very well test how marbles interacts with all of the features ofunittest. For example, some of the assertions we're wrapping inmarblesmay behave strangely depending on how we've wrapped them (we've seen problems before where things likeassertMultiLineEqualdon't faithfully pass themsgargument to all assertions they then make, which broke our annotations, but only when that method got called with something that wasn't astr).We should try to test
marblesagainst all assertions inunittest, possibly by runningunittest's own test harnesses. We may also want to test interactions betweenmarblesand other features ofunittest, but let's start there.