refactored tests - they are passing