Add instructions for running tests [ci skip]

This commit adds instructions for running the test suite to help people
start contributing more quickly.

It also mentions standard, introduced in #1404
This commit is contained in:
Daniel Colson 2020-06-09 23:30:44 -04:00
parent 8f0c4afdf4
commit a514e4d077
1 changed files with 53 additions and 14 deletions

View File

@ -12,7 +12,7 @@ Here are some ways *you* can contribute:
* by suggesting new features
* by writing or editing documentation
* by writing specifications
* by writing code ( **no patch is too small** : fix typos, add comments, clean up inconsistent whitespace )
* by writing code ( **no patch is too small** : fix typos, add comments, etc. )
* by refactoring code
* by closing [issues][]
* by reviewing patches
@ -23,13 +23,10 @@ Here are some ways *you* can contribute:
* We use the [GitHub issue tracker][issues] to track bugs and features.
* Before submitting a bug report or feature request, check to make sure it hasn't
already been submitted.
* When submitting a bug report, please include a [Gist][] that includes a stack
trace and any details that may be necessary to reproduce the bug, including
your gem version, Ruby version, and operating system. Ideally, a bug report
should include a pull request with failing specs.
[gist]: https://gist.github.com/
already been submitted.
* When submitting a bug report, please include a [reproduction script] and any
other details that may be necessary to reproduce the bug, including your gem
version, Ruby version, and operating system.
## Cleaning up issues
@ -40,21 +37,63 @@ already been submitted.
We will happily reopen the issue.
## Submitting a Pull Request
1. [Fork][fork] the [official repository][repo].
2. [Create a topic branch.][branch]
3. Implement your feature or bug fix.
4. Add, commit, and push your changes.
5. [Submit a pull request.][pr]
## Notes
1. [Fork][fork] the [official repository][repo].
1. [Create a topic branch.][branch]
1. Implement your feature or bug fix.
1. Add, commit, and push your changes.
1. [Submit a pull request.][pr]
### Notes
* Please add tests if you changed code. Contributions without tests won't be accepted.
* If you don't know how to add tests, please put in a PR and leave a comment
asking for help. We love helping!
* Please don't update the Gem version.
## Running the test suite
The default rake task will run the full test suite and [standard]:
```sh
bundle exec rake
```
You can also run a single group of tests (unit, spec, or feature)
```sh
bundle exec rake spec:unit
bundle exec rake spec:acceptance
bundle exec rake features
```
To run an individual rspec test, you can provide a path and line number:
```sh
bundle exec rspec spec/path/to/spec.rb:123
```
You can run tests with a specific version of rails via [appraisal]. To run
the default rake task against Rails 6, for example:
```sh
bundle exec appraisal 6.0 rake
```
## Formatting
Use [standard] to automatically format your code:
```sh
bundle exec rake standard:fix
```
[repo]: https://github.com/thoughtbot/factory_bot/tree/master
[fork]: https://help.github.com/articles/fork-a-repo/
[branch]: https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/
[pr]: https://help.github.com/articles/using-pull-requests/
[standard]: https://github.com/testdouble/standard
[appraisal]: https://github.com/thoughtbot/appraisal
[reproduction script]: https://github.com/thoughtbot/factory_bot/blob/master/.github/REPRODUCTION_SCRIPT.rb
Inspired by https://github.com/middleman/middleman-heroku/blob/master/CONTRIBUTING.md