This commit adds links to the build details, code of conduct, contributing, and development setup markdown files to the README to easily access information about contributing to RSpec
Any method call may mutate an object, so we can't safely call anything on a passed argument. This reverts the following PRs and commits: * #871: * 8a0962a ("Reword comment to not use “external” twice.") * 52c69f1 ("Just use `Array#hash`.") * #868: * ed3fb3b ("Provide a clear error when received message args are mutated.") * fc9e9a5 ("Ignore arg mutations for method calls we are not concerned with.") This adds notes to the docs about using mutated args with `have_received(…).with(…)`. Fixes #892.
A very common issue is when a user attempts to run against the `master` branch. Simply pointing to `master` doesn't work. This adds the steps necessary to use `master`. We need all of the repos in order to also satisfy any other gems which may have a dependency on the `rspec` gem. [ci skip]
Specifically adds: * spy - responds and spies all methods * instance_spy - responds and spies all methods to which a specified class responds. * object_spy - responds and spies all methods to which a specific instance responds * class_spy - responds and spies all class methods to which a specific class responds I added test coverage for the expected behaviours and added some YARD docs to the new methods.
…it is optional
I noticed you are already linking to the xUnitPatterns definitions and Martin Fowler's bliki Mocks Aren't Stubs. I thought it would be good to link to Martin Fowler's Test Double bliki. I feel it is a clear, compact summary of the information in the other two links.