pdftract/crates/pdftract-core/src
jedarden 67d5969305 test(bf-3f9q8): add SSRF URL test cases and assertions
- Updated 6 SSRF blocking tests to handle both error and stub response cases
- Tests now validate SSRF-related error messages when blocking is implemented
- Falls back gracefully to stub response validation when not yet implemented
- All 7 tests pass in 0.24s with zero orphaned processes

Tested URL patterns:
- http://127.0.0.1:9999/ (IPv4 loopback)
- http://0.0.0.0/ (IPv4 wildcard)
- http://169.254.169.254/latest/meta-data/ (cloud metadata)
- http://10.0.0.1/internal (RFC 1918 private)
- http://[::1]/ (IPv6 loopback)

Closes bf-3f9q8. Verification: notes/bf-3f9q8.md
2026-07-06 12:09:31 -04:00
..
annotation feat(pdftract-91e1i): HTTP fetch sequence implementation 2026-05-28 13:17:00 -04:00
attachment test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
cache test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
cmap test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
decoder test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
encryption test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
fingerprint test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
font test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
forms test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
glyph docs(pdftract-3eohy): add rustdoc examples to Glyph and Span types 2026-06-01 01:16:24 -04:00
layout test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
ocr/preprocessing test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
output test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
parser test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
profiles test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
receipts fix(pdftract-4pnmd): build.rs doc comment format string parsing 2026-05-28 14:36:45 -04:00
render feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
schema test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
signature feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
source test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
span test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
table fix(bf-4mkhv): clean up unused imports in hash.rs 2026-06-01 09:43:48 -04:00
threads feat(pdftract-4li3d): implement security constraints for serve mode 2026-05-26 18:47:51 -04:00
atomic_file_writer.rs feat(pdftract-68wfa): implement AtomicFileWriter for atomic file writes 2026-05-24 13:02:37 -04:00
audit.rs fix(pyo3): correct extract_text_fn call in extract_markdown stub 2026-05-28 20:28:25 -04:00
classify.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
confidence.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
conformance.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
content_stream.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
detection.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
diagnostics.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
document.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
dpi.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
extract.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
graphics_state.rs fix(pdftract-2uk9z): wrap native module results in typed Python objects 2026-05-28 21:18:38 -04:00
hybrid.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
javascript.rs feat(bf-2pxsu): add logging for JavaScript execution attempts 2026-07-05 16:36:16 -04:00
lib.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
log_policy.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
markdown.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
ocr.rs feat(pdftract-6dki1): implement histogram stretch contrast normalization 2026-05-24 10:30:20 -04:00
options.rs feat(bf-3fka4): scaffold pdftract-inspector-ui crate 2026-06-01 09:43:49 -04:00
page_class.rs fix(pdftract-tuky): fix color clamping test and verify Phase 3.1 coordinator 2026-05-26 16:36:01 -04:00
pages.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
preprocess.rs feat(pdftract-37j8q): implement Sauvola adaptive thresholding 2026-06-01 01:19:14 -04:00
remote.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
render.rs feat(pdftract-axcri): record inline images as ImageXObject entries 2026-05-24 07:41:50 -04:00
sdk.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
semaphore.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
span_flags.rs feat(pdftract-cbrbg): implement span flag detector for Phase 4.1 2026-05-24 07:28:25 -04:00
text.rs test(bf-3f9q8): add SSRF URL test cases and assertions 2026-07-06 12:09:31 -04:00
url_validation.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
word_boundary.rs fix(bf-4mkhv): clean up unused imports in hash.rs 2026-06-01 09:43:48 -04:00