unit-tests with coverage