test(2meet-data-optimizer): add scale seeder for 100k vendors / 1M listings

- Seed a HivePress-shaped dataset three ways (native meta, entity tables,
  hot table) with flat tables built by TMDO's own schema code
- Refuse any database not named *_bench before the bootstrap connects;
  bootstrap now honours a pre-defined ABSPATH for the wp-admin stub
- Full scale seeds 9.5M postmeta rows in 7m25s; 0 value mismatches

Verify: TMDO_TEST_DB_NAME=wp_wpdo_bench php tests/bench/seed.php
  --vendors=100000 --listings=1000000; unit 600 OK, integration 416 OK
PR: PR-004
This commit is contained in:
2026-09-25 20:55:25 +08:00
parent 9fa84845be
commit 8fc1dc1f1c
5 changed files with 518 additions and 1 deletions
+2 -1
View File
@@ -20,7 +20,8 @@ require_once dirname( __DIR__, 2 ) . '/vendor/autoload.php';
// ── Constants ──────────────────────────────────────────────────────────────
define( 'ABSPATH', '/fake/wordpress/' );
// tests/bench/seed.php pre-defines ABSPATH so code that requires wp-admin files can run.
if ( ! defined( 'ABSPATH' ) ) { define( 'ABSPATH', '/fake/wordpress/' ); }
define( 'TMDO_PATH', dirname( __DIR__, 2 ) . '/' );
define( 'TMDO_URL', 'http://localhost/wp-content/plugins/2meet-data-optimizer/' );
define( 'TMDO_FILE', TMDO_PATH . '2meet-data-optimizer.php' );