You could DRY these up by wrapping all the tests where the user is an admin inside a context block.  Then you can extract out the `sign_in_as` and `visit` lines into a `before` block.