Skip to content

fix: filtered WP Codebox PHPUnit runs double-load test config #2391

Description

@chubes4

Problem

Passing PHPUnit arguments through homeboy review test causes the WP Codebox PHPUnit worker to crash before executing tests, while the same project reaches PHPUnit without passthrough arguments.

Reproduction

From Extra-Chill/data-machine-events PR #530, Homeboy action run 30035017999 invoked:

homeboy review test --placement local data-machine-events --path ... --changed-since 2f99076 -- --filter \"VenueProfileMutationsTest|CheckMissingVenueAddressesCommandTest\"

The runner correctly selected the two files, then crashed during WordPress test installation:

Warning: Constant DB_NAME already defined in /tmp/wp-tests-config.php on line 3
Warning: Constant DB_USER already defined in /tmp/wp-tests-config.php on line 4
Warning: Constant DB_PASSWORD already defined in /tmp/wp-tests-config.php on line 5
Warning: Constant DB_HOST already defined in /tmp/wp-tests-config.php on line 6
Warning: Constant DB_CHARSET already defined in /tmp/wp-tests-config.php on line 7
Warning: Constant ABSPATH already defined in /tmp/wp-tests-config.php on line 12
Warning: Undefined variable $wpdb in .../wp-phpunit/includes/install.php on line 56

Job: https://github.com/Extra-Chill/data-machine-events/actions/runs/30035017999/job/89300698506

Expected

Filtered/file-scoped PHPUnit runs should use the same single-load managed bootstrap as full-suite runs and execute the selected tests.

Notes

  • Homeboy CLI: 0.310.3
  • WordPress extension revision: aee32285
  • WP Codebox source SHA: 1edb4779
  • The preceding standalone real-MySQL test step passed.
  • A prior unfiltered run reached PHPUnit 9.6.35 and executed 634 tests, so this is specific to the filtered invocation path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions