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/CONTRIBUTING.md
+4-1Lines changed: 4 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -51,13 +51,16 @@ Run `just` with no arguments to see all available commands. Here are the most co
51
51
52
52
```bash
53
53
just lint # Run pre-commit hooks (ruff format) on all files
54
-
just test# Run tests
54
+
just test# Run the full test suite, matching CI expectations
55
+
just test-fast # Run the fast local subset, excluding integration and slow tests
55
56
just test-xdist # Run tests in parallel
56
57
just test-cov # Run tests with coverage report
57
58
just test-cov-xdist # Run tests with coverage in parallel
58
59
just build # Build the package
59
60
```
60
61
62
+
Use `just test-fast` while iterating locally on changes that do not need full STIX-backed export or other slow integration coverage. Tests or setup steps that normally take longer than 10 seconds should be marked `slow`, so they are skipped by `just test-fast`. Before opening a PR, run `just test`; GitHub Actions also runs the full suite with coverage.
63
+
61
64
Tests that need real ATT&CK STIX data should use the shared STIX fixtures instead of downloading or
62
65
preparing bundles directly. Parallel test runs warm the shared STIX cache before workers start; if a
63
66
new xdist-backed test needs an additional ATT&CK release, update the cache warmup list in
@@ -48,6 +77,7 @@ overview of the available methods follows.
48
77
|build_dataframes|`src`: MemoryStore or other stix2 DataSource object holding domain data<br> `domain`: domain of ATT&CK that `src` corresponds to| Builds a Pandas DataFrame collection as a dictionary, with keys for each type, based on the ATT&CK data provided|
49
78
|write_excel|`dataframes`: pandas DataFrame dictionary (generated by build_dataframes) <br> `domain`: domain of ATT&CK that `dataframes` corresponds to <br> `version`: optional parameter indicating which version of ATT&CK is in use <br> `output_dir`: optional parameter specifying output directory| Writes out DataFrame based ATT&CK data to excel files|
50
79
|export|`domain`: the domain of ATT&CK to download <br> `version`: optional parameter specifying which version of ATT&CK to download <br> `output_dir`: optional parameter specifying output directory| Downloads ATT&CK data from MITRE/CTI and exports it to Excel spreadsheets |
80
+
|export_release|`version`: optional ATT&CK release version <br> `stix_version`: STIX release tree, such as "2.0" or "2.1" <br> `output_dir`: parent output directory <br> `stix_base_dir`: optional directory containing release STIX files <br> `domains`: optional list of domains <br> `versioned_output_dir`: preserve domain-version output folders| Exports a full ATT&CK release to Excel spreadsheets, downloading missing STIX files temporarily when needed |
0 commit comments