refactored tests, add extras