Moved tests into separate module to break circular dependencies