tests are close to what they were before, still green after massive refactoring