Is this a little too crazy for a setup function in an integration test? It is pretty useful the way it is and will be even more useful when I need to test different types of users for permissions.