Also - don't worry too much about code duplication in tests.  Yes, there'll be some.  But we want tests to be isolated bite sized chunks that don't have a lot of dependencies - that way we can add and delete them with ease.