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
In general, when the prompter asks you to fix the implementation, this means that they have adjusted the tests already and they want you to fix the implementation.
6
+
Typically you should not touch the tests in this case, unless there is something obviously wrong in them, like a typo.
7
+
The first step to identify what is necessary should be to run the tests and see which ones are failing.
8
+
9
+
## Running tests
10
+
11
+
In general, the main command to run for testing is:
12
+
13
+
```bash
14
+
make check
15
+
```
16
+
17
+
This will run all the test suites.
18
+
19
+
## Running python tools
20
+
21
+
This project uses `uv`.
22
+
That means that you should not run `python`, `python3`, `pip`, `pip3` directly.
23
+
Instead, run the appropriate uv command to ensure we're using the right python and the right dependencies.
24
+
25
+
## Pointers for the source code
26
+
27
+
When fixing issues, these are usually the files to look at:
28
+
29
+
- The implementation of `cfengine format` is in `src/cfengine_cli/format.py`.
30
+
- The implementation of `cfengine lint` is in `src/cfengine_cli/lint.py`.
31
+
32
+
## Test suites
33
+
34
+
As mentioned above, the `make check` command runs all the tests.
35
+
We have different suites:
36
+
37
+
- Unit tests in `tests/unit` test individual python functions.
38
+
- Formatting tests in `tests/format` test the formatter (`cfengine format`).
39
+
- Linting tests in `tests/lint` test the linter.
40
+
- Shell tests in `tests/shell` tests various subcommands and the tool as a whole in an end-to-end fashion.
0 commit comments