Mocha

The Mocha library is the one Rails uses for its own testing, so it seems the natural choice for a test-double library to use with Minitest. Full Mocha docs are available online.[55]

Installing Mocha

Mocha needs to be installed after Minitest, which requires a slight indirection to ensure your Rails app does the right thing.

First, in the Gemfile’s :test group, add the Mocha gem:

 gem ​"mocha"

Then, inside the test/test_helper.rb file, you manually require Mocha at any point in the file after the rails/test_help library is loaded:

 require ​"mocha/mini_test"

At that point you should be good to go. Please see Chapter 7, Using Test Doubles as Mocks and Stubs, for a full discussion of test doubles. Here I’ll cover only Mocha syntax.

Get Rails 5 Test Prescriptions now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.