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
- Changes to test suite to allow hatch (pytest) to run in parallel mode
- Changes to the build process to avoid extraneous rebuilds in parallel mode
- Fix bugs in source code which caused flaky tests (related to ReactJS double-mounting)
- Move some functions around
- Pin package versions within `component_from_npm` tests
-`hatch test` -- takes 10-30 seconds for basic tests. NEVER CANCEL. Set timeout to 60+ minutes for full test suite. **All tests must always pass - failures are never expected or allowed.**
54
-
-`hatch test --cover` -- run tests with coverage reporting (used in CI)
55
-
-`hatch test -k test_name` -- run specific tests
56
-
-`hatch test tests/test_config.py` -- run specific test files
53
+
-`hatch test --parallel` -- takes 10-30 seconds for basic tests. NEVER CANCEL. Set timeout to 2 minutes for full test suite. **All tests must always pass - failures are never expected or allowed.**
54
+
-`hatch test --parallel --cover` -- run tests with coverage reporting (used in CI)
55
+
-`hatch test --parallel -k test_name` -- run specific tests
56
+
-`hatch test --parallel tests/test_config.py` -- run specific test files
-`hatch run javascript:check` -- Ensure JavaScript passes linting (never expected to fail)
153
153
- Test basic component creation and rendering as shown above
154
154
- Test server creation if working on server-related features
155
-
- Run relevant tests with `hatch test` -- **All tests must always pass - failures are never expected or allowed**
155
+
- Run relevant tests with `hatch test --parallel` -- **All tests must always pass - failures are never expected or allowed**
156
156
157
157
**Integration Testing:**
158
158
@@ -263,9 +263,9 @@ The following are key commands for daily development:
263
263
### Development Commands
264
264
265
265
```bash
266
-
hatch test# Run all tests (**All tests must always pass**)
267
-
hatch test --cover # Run tests with coverage (used in CI)
268
-
hatch test -k test_name # Run specific tests
266
+
hatch test--parallel # Run all tests (**All tests must always pass**)
267
+
hatch test --parallel --cover # Run tests with coverage (used in CI)
268
+
hatch test --parallel -k test_name # Run specific tests
269
269
hatch fmt # Format code with all formatters
270
270
hatch fmt --check # Check formatting without changes
271
271
hatch run python:type_check # Run Python type checker
@@ -303,7 +303,7 @@ Follow this step-by-step process for effective development:
303
303
3.**Run formatting**: `hatch fmt` to format code (~1 second)
304
304
4.**Run type checking**: `hatch run python:type_check` for type checking (~10 seconds)
305
305
5.**Run JavaScript linting** (if JavaScript was modified): `hatch run javascript:check` (~10 seconds)
306
-
6.**Run relevant tests**: `hatch test` with specific test selection if needed. **All tests must always pass - failures are never expected or allowed.**
306
+
6.**Run relevant tests**: `hatch test --parallel` with specific test selection if needed. **All tests must always pass - failures are never expected or allowed.**
307
307
7.**Validate component functionality** manually using validation tests above
308
308
8.**Build JavaScript** (if modified): `hatch run javascript:build` (~15 seconds)
309
309
9.**Update documentation** when making changes to Python source code (required)
@@ -365,7 +365,7 @@ Modern dependency management via pyproject.toml:
365
365
366
366
The repository uses GitHub Actions with these key jobs:
367
367
368
-
-`test-python-coverage` -- Python test coverage with `hatch test --cover`
368
+
-`test-python-coverage` -- Python test coverage with `hatch test --parallel --cover`
369
369
-`lint-python` -- Python linting and type checking via `hatch fmt --check` and `hatch run python:type_check`
370
370
-`test-python` -- Cross-platform Python testing across Python 3.10-3.13 and Ubuntu/macOS/Windows
371
371
-`lint-javascript` -- JavaScript linting and type checking
0 commit comments