Timer should be able to be cancelled more than once

It used to work in 3.0.1, so I think this should be a bug?
This test is fine aside from this line.

We can't use mocks for time-based tests like you can elsewhere, because this library is literally designed to provide timing logic. These are integration tests that cannot be mocked out.

All that said there's no need for a sleep here. Please delete it.