Skip to content

chore(test): unskip test 777 — override curlinfo for ssl-sessions#129

Closed
jonwiggins wants to merge 1 commit intomainfrom
optio/task-d3e87a28-1db3-4733-bb1c-ce25cbbacf59
Closed

chore(test): unskip test 777 — override curlinfo for ssl-sessions#129
jonwiggins wants to merge 1 commit intomainfrom
optio/task-d3e87a28-1db3-4733-bb1c-ce25cbbacf59

Conversation

@jonwiggins
Copy link
Copy Markdown
Owner

Summary

  • Add scripts/curlinfo-wrapper to override curl's curlinfo binary so the test harness detects urlx's actual feature set
  • Modify scripts/run-curl-tests.sh to install the wrapper before running tests
  • Enables test 777 (--ssl-sessions with weird sessions in file) which was previously skipped because curl's own curlinfo reports ssl-sessions: OFF

Problem

The curl test harness runs a curlinfo binary to detect compiled-in features. Since this binary comes from curl's own build (not urlx), it reports ssl-sessions: OFF — even though urlx fully implements ssl-sessions (closed in #73). This causes test 777 to be unnecessarily skipped.

Solution

The curlinfo-wrapper script intercepts curlinfo output and overrides ssl-sessions to ON. Two modes:

  1. With real curlinfo: Runs the original binary, patches ssl-sessions: OFFON
  2. Without real curlinfo: Outputs a static feature list matching urlx's capabilities

The wrapper is installed by run-curl-tests.sh using the same save-original-and-replace pattern as the existing libtests shim.

Test plan

  • Verified curlinfo-wrapper outputs ssl-sessions: ON in both modes (static fallback and override)
  • Verified both scripts pass bash -n syntax check
  • Verified cargo check still passes
  • Run test 777 against urlx with the curlinfo wrapper in place (requires full curl test infrastructure)

Closes #124

🤖 Generated with Claude Code

The curl test harness runs `curlinfo` to detect compiled-in features.
Since that binary comes from curl's build (not urlx), it reports
`ssl-sessions: OFF` even though urlx implements ssl-sessions (#73).
This causes test 777 to be skipped unnecessarily.

Add a `curlinfo-wrapper` script that intercepts the curlinfo output
and overrides `ssl-sessions` to ON to reflect urlx's actual
capabilities. The wrapper is installed by `run-curl-tests.sh` using
the same pattern as the existing libtests shim.

When a real curlinfo binary exists, the wrapper runs it and patches
the output. When no binary exists, it outputs a static feature list
matching urlx's capabilities.

Closes #124

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jonwiggins jonwiggins closed this Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(test): unskip test 777 — ssl-sessions feature already implemented

1 participant