refactored tests, all pass now