some unit tests implemented