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
docs: fix test counts, acquire-shape comment, and stale API examples
- README: from_task acquire shape (n_samples, n_channels); mocked tier 663 -> 916; replace the broken 2-task software-trigger snippet with the valid single-task form
- TESTING: 905 -> 916 mocked, 33 -> 36 hardware; remove the removed device_ind from the mocked/simulated/hardware examples and fix the (n_samples, n_channels) shapes; document both hardware test files
| Hardware |`uv run pytest -m hardware -v`| Physical NI hardware |
335
343
336
-
The mocked tier (663 tests) runs by default and requires no NI-DAQmx driver. The simulated tier uses the real driver with simulated devices to catch API contract violations. The hardware tier validates real-world timing and physical signals.
344
+
The mocked tier (916 tests) runs by default and requires no NI-DAQmx driver. The simulated tier uses the real driver with simulated devices to catch API contract violations. The hardware tier validates real-world timing and physical signals.
337
345
338
346
See [TESTING.md](TESTING.md) for detailed setup instructions, troubleshooting, and how to configure simulated devices.
Copy file name to clipboardExpand all lines: TESTING.md
+19-13Lines changed: 19 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,9 +6,9 @@ nidaqwrapper uses a three-tier test strategy to balance speed, coverage, and har
6
6
7
7
| Tier | Tests | Requirements | Purpose |
8
8
|------|-------|-------------|---------|
9
-
|**Mocked**|905| None | Fast unit tests with mocked nidaqmx for CI/CD |
9
+
|**Mocked**|916| None | Fast unit tests with mocked nidaqmx for CI/CD |
10
10
|**Simulated**| 81 + 1 xfail (+1 env-dependent skip) | NI-DAQmx driver + simulated devices | Real driver API validation without physical hardware |
11
-
|**Hardware**|33| Physical NI-DAQmx devices | Real-world timing, triggers, and signal validation |
11
+
|**Hardware**|36| Physical NI-DAQmx devices | Real-world timing, triggers, and signal validation |
12
12
13
13
The simulated tier bridges the gap between mocked tests and hardware tests. All 4 bugs found during hardware testing were invisible to mocked tests because `MagicMock` auto-generates any attribute on access, masking real API mismatches. Simulated devices use the real NI-DAQmx driver with simulated hardware, catching API contract violations while remaining fast and deterministic.
14
14
@@ -35,7 +35,7 @@ The default `uv run pytest` excludes both simulated and hardware tests to ensure
35
35
36
36
## Test Tiers
37
37
38
-
### Mocked Tests (905 tests)
38
+
### Mocked Tests (916 tests)
39
39
40
40
**What they test:**
41
41
- Public API contracts (function signatures, return types)
@@ -95,7 +95,12 @@ Simulated tests detect these issues without requiring physical hardware.
95
95
(DaqError -89125) — full cross-device bursts are hardware-test only
96
96
- cDAQ chassis/modules cannot be simulated on Linux
0 commit comments