You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/contrib/02_continuous_integration.md
+7-5Lines changed: 7 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
# Continuous Integration in pySDC
2
2
3
3
Any commit in `pySDC` are tested by GitHub continuous integration (CI). You can see in in the [action panel](https://github.com/Parallel-in-Time/pySDC/actions) the tests for each branches.
4
-
Those tests can be divided in three main categories : [code linting](#code-linting), [code testing](#code-testing) and [code coverage](#code-coverage).
4
+
Those tests are currently divided in three main categories : [code linting](#code-linting), [code testing](#code-testing) and [code coverage](#code-coverage).
5
5
Finally, the CI also build artifacts that are used to generate the documentation website (see http://parallel-in-time.org/pySDC/), more details given in the [documentation generation](#documentation-generation) section.
6
6
7
7
## Code linting
@@ -50,14 +50,14 @@ pytest -v pySDC/tests
50
50
51
51
## Code coverage
52
52
53
-
This stage allows to checks how much part of the `pySDC` code is tested by the previous stage. It is based on the [coverage](https://pypi.org/project/coverage/) library and currently applied to the following directories :
53
+
This stage allows to checks how much of the `pySDC` code is tested by the previous stage. It is based on the [coverage](https://pypi.org/project/coverage/) library and currently applied to the following directories :
54
54
55
55
- `pySDC/core`
56
56
- `pySDC/projects`
57
57
- `pySDC/tutorial`
58
58
59
59
This analysis is donein parallel to the test each time a pull is done on any branch (main repository or fork).
60
-
You can look at the current coverage report for the master branch [here](https://parallel-in-time.org/pySDC/coverage/index.html).
60
+
You can look at the current coverage report for the master branch [here](https://parallel-in-time.org/pySDC/coverage/index.html) or compare the results with previous builds [here](https://app.codecov.io/gh/Parallel-in-Time/pySDC). Codecov will also comment on any pull request, indicating the change of coverage.
61
61
62
62
During developments, you can also run the coverage tests locally, using :
63
63
@@ -104,6 +104,8 @@ Accepted use of the `# pragma: no cover` are:
104
104
1. Functions and code used for plotting
105
105
2. Lines in one conditional preceding any `raise` statement
106
106
107
+
If you think the pragma should be used in other parts of your pull request, please indicate (and justify) this in your description.
108
+
107
109
## Documentation generation
108
110
109
111
Documentation is built using [sphinx](https://www.sphinx-doc.org/en/master/).
@@ -123,9 +125,9 @@ sphinx-build -b html docs/source docs/build/html
123
125
Then you can open `docs/build/html/index.html` using you favorite browser and check how your own documentation looks like on the website.
124
126
125
127
> :bell:**Important** : running all the tests is necessary to generate graphs and images used by the website.
126
-
> But you can still generate the website without it: just all images for the tutorials, projects and playgrounds will be missing.
128
+
> But you can still generate the website without it: just all images for the tutorials, projects and playgrounds will be missing.
127
129
> This approach can be considered for local testing of your contribution when it does not concern parts containing images (_i.e_ project or code documentation).
128
130
129
131
:arrow_left:[Back to Pull Request Recommendation](./01_pull_requests.md) ---
0 commit comments