Feature/api specs

@mtakac if you're going to change a setting in a `before` block, you should change it back to the original value in an `after` block (or better, use an `around` block).