further implemented unit tests