Skip to content

Testing: ServeAotTest POST form submission via phpc serve --aot #285

@PurHur

Description

@PurHur

Problem

#248 adds VM phpc serve POST coverage, and #257 exercises dual REQUEST_BODY on a standalone AOT binary. There is still no integration test that:

  1. Builds a tiny script with phpc build
  2. Serves it with phpc serve --aot
  3. Sends POST /form.php with application/x-www-form-urlencoded body
  4. Asserts $_POST is populated per request

Without this, AOT-specific regressions in bin/serve-aot.php, ProjectManifest, or superglobals_refresh.c POST parsing will not fail local/Docker CI.

Goal

Mirror #248 in test/real/ServeAotTest.php once AOT runtime refresh for $_POST is reliable.

Scope

Acceptance criteria

./script/ci-local.sh --filter ServeAotTest::testPost
# harness:
./script/docker-ci-local.sh --filter ServeAotTest::testPost

Test runs (not skipped) when LLVM + loopback bind available; skipped only when PHP_COMPILER_SKIP_SERVE_TESTS=1.

Verification (local only)

Do not require GitHub Actions. GHA may skip serve tests; Docker/local must not.

Dependencies

Links

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions