Repository: PlasmaFAIR/fortitude (language: python)

Issue:
Not checking installability in CI
https://github.com/PlasmaFAIR/fortitude/pull/102 fixed a documentation error which recommended an incorrect method for installing the software. To catch these issues in future, we should check that the following work in our CI tests:

```bash
pip install .
cargo install --path fortitude
```

Ideally these should also be followed by a check that calling `fortitude --help` actually works.


Discussion / hints:

Fix patch:
diff --git a/fortitude/src/rules/modules/external_functions.rs b/fortitude/src/rules/modules/external_functions.rs
index 1db2aca..33dbaf3 100644
--- a/fortitude/src/rules/modules/external_functions.rs
+++ b/fortitude/src/rules/modules/external_functions.rs
@@ -6,7 +6,7 @@ use ruff_source_file::SourceFile;
 use tree_sitter::Node;
 
 /// ## What it does
-/// Checks whether functions and subroutines are defined within modules (or one
+/// Checks for any functions and subroutines not defined within modules (or one
 /// of a few acceptable alternatives).
 ///
 /// ## Why is this bad?


Test patch:
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 74a6c1c..27e6464 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -22,3 +22,27 @@ jobs:
       run: cargo build --verbose
     - name: Run tests
       run: cargo test --verbose
+
+  cargo-install:
+    name: Test cargo installation
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v4
+    - name: Check cargo install
+      run: |
+        cargo install --path fortitude
+        fortitude --help
+
+  pip-install:
+    name: Test pip installation
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v4
+    - name: Set up Python
+      uses: actions/setup-python@v5
+      with:
+        python-version: '3.x'
+    - name: Check pip install
+      run: |
+        pip install .
+        fortitude --help