Black-box web app testing using custom RSpec matchers