Add some testing docs
This commit is contained in:
parent
29c9f6b46f
commit
c605793b2f
@ -63,3 +63,8 @@ t = Template(;
|
|||||||
---
|
---
|
||||||
|
|
||||||
For a much more detailled overview, please see the documentation.
|
For a much more detailled overview, please see the documentation.
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
Issues and pull requests are welcome!
|
||||||
|
For some more specific tips, see the developer documentation.
|
||||||
|
@ -342,3 +342,28 @@ compat_version
|
|||||||
format_version
|
format_version
|
||||||
collect_versions
|
collect_versions
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
|
||||||
|
If you write a cool new plugin that could be useful to other people, or find and fix a bug, you're encouraged to open a pull request with your changes.
|
||||||
|
Here are some testing tips to ensure that your PR goes through as smoothly as possible.
|
||||||
|
|
||||||
|
### Updating Reference Tests & Fixtures
|
||||||
|
|
||||||
|
If you've added or modified plugins, you should update the reference tests and the associated test fixtures.
|
||||||
|
In `test/reference.jl`, you'll find a "Reference tests" test set that basically generates a bunch of packages, and then checks each file against a reference file, which is stored somewhere in `test/fixtures`.
|
||||||
|
|
||||||
|
For new plugins, you should add an instance of your plugin to the "All plugins" anad "Wacky options" test sets, then run the tests with `Pkg.test`.
|
||||||
|
They should pass, and there will be new files in `test/fixtures`.
|
||||||
|
Check them to make sure that they contain exactly what you would expect!
|
||||||
|
|
||||||
|
For changes to existing plugins, update the plugin options appropriately in the "Wacky options" test set.
|
||||||
|
Rather than using `Pkg.test` to run the tests in this case, use `include("test/runtests.jl")`.
|
||||||
|
Running the tests in an interactive session will give you the option to review and accept changes to the fixtures, updating the files automatically (see [ReferenceTests](https://github.com/Evizero/ReferenceTests.jl) for more details).
|
||||||
|
Before you can do this, you'll need to add PkgTemplates' test requirements to your current environment.
|
||||||
|
|
||||||
|
### Updating "Show" Tests
|
||||||
|
|
||||||
|
Depending on what you've changed, the tests in `test/show.jl` might fail.
|
||||||
|
To fix those, you'll need to update the `expected` value to match what is actually displayed in a Julia REPL.
|
||||||
|
The test error itself is usually not very helpful, so it's easiest to launch a REPL, evaluate `Template()`, and copy-paste the relevant parts back into the test file.
|
||||||
|
Loading…
Reference in New Issue
Block a user