Skip to content

Commit 0c99b97

Browse files
author
Timon Viola
committed
docs: update documentation
1 parent e024d40 commit 0c99b97

File tree

1 file changed

+23
-13
lines changed

1 file changed

+23
-13
lines changed

β€ŽCONTRIBUTING.mdβ€Ž

Lines changed: 23 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,22 @@ Install hatch with `pipx` and configure it. As a minimum, configure it to create
1010
[dirs.env]
1111
virtual = ".venv"
1212
```
13+
# Cheat sheet
14+
- tests: `hatch run test:test`
15+
- docs: `hatch run dev:docs`
1316

14-
# VSCode
17+
# Dev tooling
18+
## VSCode
1519
1. Clone the repo
1620
1. Run `hatch env create && hatch env create dev && hatch env create test`
1721
1. Open VSCode `code .`
1822
1. Select the `dev` environment for development [See the documentation.](https://hatch.pypa.io/latest/how-to/integrate/vscode/)
1923

2024
To enable test discovery and test debugging, change the *python interpreter path* to a test environments path e.g. `test.py3.11`.
2125

22-
# No VSCode
26+
## No VSCode
2327
I suggest NeoVim or Zed. See the cheat-sheet below.
2428

25-
# Cheat sheet
26-
- tests: `hatch test`
27-
- docs: `hatch run dev:docs`
2829

2930
# Documentation
3031
The docs is built into "sites" folder. This is gitignored and the docs is built in CI.
@@ -54,19 +55,28 @@ The package follows semantic versioning. Breaking changes will occur unannounced
5455

5556

5657
# Docker
57-
The base Dockerfile can be used to run Airflow and install dagcellent in _editable_ mode, so it gives you a short feedback loop.
58+
It is recommended to use Podman with the container files. The base Dockerfile can be used to run Airflow and install dagcellent in _editable_ mode, so it gives you a short feedback loop.
59+
60+
# Tests
61+
The testing suite uses Pytest.
5862

59-
# tests
6063
## Unit tests
6164
### Fuzzing/hypothesis
65+
*coming soon* πŸ‘€
6266

6367
## Integration tests
64-
The CI will run integration tests, where external components are not mocked, but real containerized entities are used.
68+
The CI will run integration tests, where external components are not mocked, but real containerized entities are used. All integration tests are marked with `integration`.
69+
70+
In general, prefer integration testing/system tests over mocking. E.g.: to guarantee that our tools work on various SQL engines, implement integration tests against those engines.
6571

72+
The following structure illustrates where to find the various integration test.
73+
```
74+
tests
75+
β”œβ”€β”€ dags
76+
└── integration
77+
β”œβ”€β”€ mlflow
78+
β”œβ”€β”€ mssql
79+
└── psql
80+
```
6681

67-
The following integrations are available (docker commands should be executed from the project root folder):
68-
- mssql: `docker compose -f docker-compose.yaml -f ./tests/integration/docker-compose.override.mssql.yaml up --detach`
69-
- psql: `docker compose -f docker-compose.yaml -f ./tests/integration/docker-compose.override.psql.yaml up --detach`
7082

71-
To stop the running instances, it is a good idea to use the `volumes` flag to remove persistent data:
72-
`docker compose -f docker-compose.yaml -f ./tests/integration/docker-compose.override.mssql.yaml down`

0 commit comments

Comments
Β (0)