CodeForPhilly / CodeForPhilly/codeforphilly-ng
Make apps/api test fixtures cross-platform (Windows)
- Ngôn ngữ chính
- TypeScript
- Star
- 1
- Fork
- 1
- Merge trung bình
- 5 ngày 3 giờ
- Pull request đã merge (30 ngày)
- 9
Mô tả
Surfaced while closing out `plans/site-check-153.md` (PR #154).
On a Windows dev box the `apps/api` suite finishes 3 failed | 30 passed files, 10 failed | 413 passed tests, on a tree where `git diff develop..HEAD -- apps/api packages/` is empty. The failures spread across `scrub-data.test.ts` (4), `internal-reload.test.ts` (4), and `store.test.ts` (2), and reproduce with each file run alone, so it is not runner contention. Checking out `develop` and re-running `store.test.ts` reproduces its 2 failures exactly.
Mechanism (at least for `store.test.ts`): the fixture injects a write failure by pointing the private store at `/dev/null/impossible-path` and asserting the transaction rejects. On Windows that is an ordinary creatable directory, so the write succeeds and the expected throw never happens. The other seven likely share a POSIX-ism of the same flavor.
CI runs the gate on Linux where the fixtures behave as intended, so this only blocks the documented local validation gate on Windows. Worth a cross-platform fixture cleanup (e.g. a path that cannot exist on any OS, or a mocked write failure) if Windows dev boxes are to be supported.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Start with apps/api tests/scrub-data.test.ts, internal-reload.test.ts, and store.test.ts, then run each file independently on Windows and compare with the develop results. Inspect the fixtures that rely on POSIX-specific paths or write failures. Done means all three files pass on Windows while preserving the existing Linux behavior.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- typescript
- Lĩnh vực
- api, testing
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Sôi nổi
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 78/100