Tests: integration coverage for startHarper/teardownHarper against a real Harper
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- typescript
- Lĩnh vực
- testing
Hướng nghiên cứu
Bắt đầu trong suite test/ và harness kiểm thử unit dựa trên fixture hiện có, sau đó xem xét startHarper, teardownHarper, killHarper và setupHarperWithFixture. Cấu hình pool harper-integration-test-setup-loopback và một peer dependency Harper thực, hoặc bỏ qua khi không có bản build Harper. Hoàn tất khi happy path, việc dọn dẹp teardown, việc khởi động lại mà không gặp EADDRINUSE và việc bao phủ các fixture được cài đặt sẵn đều chạy thành công.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
Follow-up from #8 / #9. The new test/ suite covers runHarperCommand, killHarper, and the port helpers in isolation, but the lifecycle orchestration (startHarper / teardownHarper) is not exercised end-to-end because that needs a real Harper instance (the package's harper peer dependency) and loopback-pool setup. Worth adding as a separate integration-test layer.
Coverage to add
- Happy path —
startHarper(ctx)→ make a request againstctx.harper.httpURL/operationsAPIURL→teardownHarper(ctx); assert the instance came up and was cleaned up. - Teardown orchestration —
teardownHarperkills the process, waits for the fixed ports to free, releases the loopback address back to the pool, and removes the data root dir. - Race 2 restart path —
killHarper(ctx)followed bystartHarper(ctx)reusing the samehostnamesucceeds withoutEADDRINUSE(verifies the port-wait-before-spawn added in #9). -
setupHarperWithFixture— a pre-installed component is available on first boot.
Notes
Needs a real Harper available (peer dependency) and the loopback pool configured (harper-integration-test-setup-loopback), so this likely lives in a separate harness from the fixture-based unit tests in test/. May be best run only where a Harper build is present (and skipped otherwise).
🤖 Generated with Claude Code
- Ngôn ngữ chính
- TypeScript
- Star
- 1
- Fork
- 0
- Merge trung bình
- 15 ngày 3 giờ
- Pull request đã merge (30 ngày)
- 3
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của HarperFast/integration-testing
-
setupHarperWithFixture overwrites ctx.harper, dropping pre-set hostname (breaks multi-node add_node)Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
enhancement good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 74/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 58/100
-
Detached Harper children are orphaned permanently when the runner dies by SIGKILL/SIGHUP — reap guard only covers exit/SIGINT/SIGTERMCó thể làm lại được @kriszyp đã nhận 59 ngày trước và không có pull request nào đang mở. Đang mở
HarperFast/integration-testing#29 · 1 bình luận · 1 người được giao ·
Tất cả issue của HarperFast/integration-testing
Issue tương tự
-
Admin search throws for permissions added through Admin.generalIndexItems('permissions', ...)Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Koenkk/zigbee-herdsman-converters#13540 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Add: Tequila Music TV RO SDĐang mởcheck:passed streams:add
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
iptv-org/iptv#55821 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area/busola/ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
kyma-project/busola#5442 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
vercel-labs/wterm#246 ·
Maintainer thường phản hồi trong vòng 1 ngày