[ticket/15] Add more tests and use base class for tests

Fixes #15