added/refactored tests