Skip to content

Commit 21b7c5a

Browse files
committed
differences for PR #6
1 parent ba64e98 commit 21b7c5a

File tree

9 files changed

+339
-95
lines changed

9 files changed

+339
-95
lines changed

.DS_Store

-6 KB
Binary file not shown.

10-CI.md

Lines changed: 246 additions & 74 deletions
Large diffs are not rendered by default.

fig/github_action.png

98 KB
Loading

fig/github_actions_button.png

8.88 KB
Loading

fig/github_repo_view.png

34.3 KB
Loading

fig/matrix_tests.png

101 KB
Loading

fig/pull_request_test_failed.png

49.2 KB
Loading

files/10-CI/tests.yaml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# This is just the name of the action, you can call it whatever you like.
2+
name: Tests (pytest)
3+
4+
# This sets the events that trigger the action. In this case, we are telling
5+
# GitHub to run the tests whenever a push is made to the repository.
6+
# The trailing colon is intentional!
7+
on:
8+
push:
9+
# Only check when Python files are changed.
10+
# Don't need to check when the README is updated!
11+
paths:
12+
- '**.py'
13+
- 'pyproject.toml'
14+
pull_request:
15+
paths:
16+
- '**.py'
17+
- 'pyproject.toml'
18+
# Only check when somebody raises a pull_request to main.
19+
branches: [main]
20+
# This allows you to run the tests manually if you choose
21+
workflow_dispatch:
22+
23+
24+
# This is a list of jobs that the action will run. In this case, we have only
25+
# one job called build.
26+
jobs:
27+
28+
build:
29+
30+
strategy:
31+
matrix:
32+
python_version: ["3.12", "3.13", "3.14"]
33+
os: ["ubuntu-latest", "windows-latest"]
34+
exclude:
35+
- os: "windows-latest"
36+
python_version: "3.12"
37+
- os: "windows-latest"
38+
python_version: "3.13"
39+
40+
# This is the environment that the job will run on.
41+
runs-on: ${{ matrix.os }}
42+
43+
# This is a list of steps that the job will run. Each step is a command
44+
# that will be executed on the environment.
45+
steps:
46+
47+
# This command tells GitHub to use a pre-built action. In this case, we
48+
# are using the actions/checkout action to check out the repository. This
49+
# just means that GitHub will clone this repository to the current
50+
# working directory.
51+
- uses: actions/checkout@v6
52+
53+
# This is the name of the step. This is just a label that will be
54+
# displayed in the GitHub UI.
55+
- name: Set up Python ${{ matrix.python_version }}
56+
# This command tells GitHub to use a pre-built action. In this case, we
57+
# are using the actions/setup-python action to set up Python 3.12.
58+
uses: actions/setup-python@v6
59+
with:
60+
python-version: ${{ matrix.python_version }}
61+
62+
# This step installs the dependencies for the project such as pytest,
63+
# numpy, pandas, etc using the requirements.txt file we created earlier.
64+
- name: Install dependencies
65+
run: |
66+
python -m pip install --upgrade pip
67+
pip install -r requirements.txt
68+
69+
# This step runs the tests using the pytest command.
70+
- name: Run tests
71+
run: |
72+
pytest

md5sum.txt

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
"file" "checksum" "built" "date"
2-
"CODE_OF_CONDUCT.md" "6276ce61bd9c6aa26d0efaa7ea706a96" "site/built/CODE_OF_CONDUCT.md" "2026-02-03"
3-
"LICENSE.md" "59636c3999d12a3651febf2850f37bb4" "site/built/LICENSE.md" "2026-02-03"
4-
"config.yaml" "c371f749ccfbdf628b87eb46b7fa5059" "site/built/config.yaml" "2026-02-03"
5-
"index.md" "a02c9c785ed98ddd84fe3d34ddb12fcd" "site/built/index.md" "2026-02-03"
6-
"links.md" "8184cf4149eafbf03ce8da8ff0778c14" "site/built/links.md" "2026-02-03"
7-
"episodes/00-introduction.Rmd" "9703fac71e1762903d67487cbe831bd6" "site/built/00-introduction.md" "2026-02-03"
8-
"episodes/01-why-test-my-code.Rmd" "02029e4d43cff1633acbd7311cfc9b02" "site/built/01-why-test-my-code.md" "2026-02-03"
9-
"episodes/02-simple-tests.Rmd" "c7eea3cecbf6564ba2d6eb1c044090db" "site/built/02-simple-tests.md" "2026-02-03"
10-
"episodes/03-interacting-with-tests.Rmd" "6270b5c5fef1e472e3661f062257d5f3" "site/built/03-interacting-with-tests.md" "2026-02-03"
11-
"episodes/04-unit-tests-best-practices.Rmd" "b7c5558b529169e65e89d533eced216d" "site/built/04-unit-tests-best-practices.md" "2026-02-03"
12-
"episodes/05-testing-exceptions.Rmd" "763eaac6c3905bc4444d4ff179d3f4bb" "site/built/05-testing-exceptions.md" "2026-02-03"
13-
"episodes/06-testing-data-structures.Rmd" "42a7b2ec2d1b441865ef2daf339c8160" "site/built/06-testing-data-structures.md" "2026-02-03"
14-
"episodes/07-fixtures.Rmd" "56120a2cb97196bf0f3ce2060aa6a025" "site/built/07-fixtures.md" "2026-02-03"
15-
"episodes/08-parametrization.Rmd" "08fb3f570d19e48f7d8a4841c9b13071" "site/built/08-parametrization.md" "2026-02-03"
16-
"episodes/09-testing-output-files.Rmd" "3ec8b815934521f0a4d244bcb585a8d6" "site/built/09-testing-output-files.md" "2026-02-03"
17-
"episodes/10-CI.Rmd" "f945c9f9ff27fe67c26730869d9c15e6" "site/built/10-CI.md" "2026-02-03"
18-
"instructors/instructor-notes.md" "cae72b6712578d74a49fea7513099f8c" "site/built/instructor-notes.md" "2026-02-03"
19-
"learners/reference.md" "1e67e9d33803966d818d4be17ae556f9" "site/built/reference.md" "2026-02-03"
20-
"learners/setup.md" "1f60fdc531062620b4efd2d68ceebaaa" "site/built/setup.md" "2026-02-03"
21-
"profiles/learner-profiles.md" "60b93493cf1da06dfd63255d73854461" "site/built/learner-profiles.md" "2026-02-03"
22-
"renv/profiles/lesson-requirements/renv.lock" "0a3836bd2fc6b054e19f258388e32791" "site/built/renv.lock" "2026-02-03"
2+
"CODE_OF_CONDUCT.md" "6276ce61bd9c6aa26d0efaa7ea706a96" "site/built/CODE_OF_CONDUCT.md" "2026-02-06"
3+
"LICENSE.md" "59636c3999d12a3651febf2850f37bb4" "site/built/LICENSE.md" "2026-02-06"
4+
"config.yaml" "c371f749ccfbdf628b87eb46b7fa5059" "site/built/config.yaml" "2026-02-06"
5+
"index.md" "a02c9c785ed98ddd84fe3d34ddb12fcd" "site/built/index.md" "2026-02-06"
6+
"links.md" "8184cf4149eafbf03ce8da8ff0778c14" "site/built/links.md" "2026-02-06"
7+
"episodes/00-introduction.Rmd" "9703fac71e1762903d67487cbe831bd6" "site/built/00-introduction.md" "2026-02-06"
8+
"episodes/01-why-test-my-code.Rmd" "02029e4d43cff1633acbd7311cfc9b02" "site/built/01-why-test-my-code.md" "2026-02-06"
9+
"episodes/02-simple-tests.Rmd" "c7eea3cecbf6564ba2d6eb1c044090db" "site/built/02-simple-tests.md" "2026-02-06"
10+
"episodes/03-interacting-with-tests.Rmd" "6270b5c5fef1e472e3661f062257d5f3" "site/built/03-interacting-with-tests.md" "2026-02-06"
11+
"episodes/04-unit-tests-best-practices.Rmd" "b7c5558b529169e65e89d533eced216d" "site/built/04-unit-tests-best-practices.md" "2026-02-06"
12+
"episodes/05-testing-exceptions.Rmd" "763eaac6c3905bc4444d4ff179d3f4bb" "site/built/05-testing-exceptions.md" "2026-02-06"
13+
"episodes/06-testing-data-structures.Rmd" "42a7b2ec2d1b441865ef2daf339c8160" "site/built/06-testing-data-structures.md" "2026-02-06"
14+
"episodes/07-fixtures.Rmd" "56120a2cb97196bf0f3ce2060aa6a025" "site/built/07-fixtures.md" "2026-02-06"
15+
"episodes/08-parametrization.Rmd" "08fb3f570d19e48f7d8a4841c9b13071" "site/built/08-parametrization.md" "2026-02-06"
16+
"episodes/09-testing-output-files.Rmd" "3ec8b815934521f0a4d244bcb585a8d6" "site/built/09-testing-output-files.md" "2026-02-06"
17+
"episodes/10-CI.Rmd" "9d8f06dc6e13aa31aa51db3d0c1d3c09" "site/built/10-CI.md" "2026-02-06"
18+
"instructors/instructor-notes.md" "cae72b6712578d74a49fea7513099f8c" "site/built/instructor-notes.md" "2026-02-06"
19+
"learners/reference.md" "1e67e9d33803966d818d4be17ae556f9" "site/built/reference.md" "2026-02-06"
20+
"learners/setup.md" "1f60fdc531062620b4efd2d68ceebaaa" "site/built/setup.md" "2026-02-06"
21+
"profiles/learner-profiles.md" "60b93493cf1da06dfd63255d73854461" "site/built/learner-profiles.md" "2026-02-06"
22+
"renv/profiles/lesson-requirements/renv.lock" "0a3836bd2fc6b054e19f258388e32791" "site/built/renv.lock" "2026-02-06"

0 commit comments

Comments
 (0)