rewrite tests
refactor. Make it a little DRYer