That being said, I don't really want to start off with tests that
are
putting too many asserts into the one test. Some combinations are fine
but I'd prefer erring on the side of separating things out a bit too
much for now rather than risk setting an example of large, monolithic
tests.
I agree, and it's especially important for more complex code. But in this case, I
think I've hit the sweet spot. The tests are really simple, and therefore they can be
clustered together (in a reasonable extent) for improved readability and reduced test code
length.
By the way, I've pushed some more revisions of the patch. It contains 64 lines of code
+ 144 lines of documentation and whitespace, and 208 lines of code of tests. Pylint score
is 100% and test coverage is 100%. I think it's my best code ever, by all metrics ;)
Let's not be too nitpicky here.