re-write tests