Implements automatic creation of required plugin pages (Community Login, Trainer Registration, Trainer Dashboard) upon plugin activation. This addresses E2E test failures caused by missing pages in the test environment. - Adds activation hook in `hvac-community-events.php` to call `hvac_ce_create_required_pages`. - The callback function checks for existing pages by slug and creates them using `wp_insert_post` if missing. Includes debug logging. Also fixes issues identified during E2E test debugging: - Corrects fatal error in `includes/community/class-login-handler.php` by replacing undefined constant `HVAC_COMMUNITY_EVENTS_PATH` with `HVAC_CE_PLUGIN_DIR`. - Updates `tests/e2e/tests/login.spec.ts` to use the correct selector `#wp-submit` for the login form submit button instead of `button[type="submit"]`. Documentation updates: - Adds `docs/automatic-page-creation-plan.md`. - Updates `README.md` regarding automatic page creation. - Updates Memory Bank files (`decisionLog.md`, `progress.md`, `activeContext.md`). Note: Activation hook logging did not appear during WP-CLI activation, requiring further investigation if page creation issues persist. E2E test confirmation pending.
30 lines
No EOL
873 B
PHP
30 lines
No EOL
873 B
PHP
<?php
|
|
// Test with a clean database
|
|
define( 'DB_NAME', 'wordpress_test' );
|
|
define( 'DB_USER', 'root' );
|
|
define( 'DB_PASSWORD', getenv('DEV_DB_ROOT_PASSWORD') );
|
|
define( 'DB_HOST', 'db' );
|
|
define( 'DB_CHARSET', 'utf8' );
|
|
define( 'DB_COLLATE', '' );
|
|
|
|
// WordPress test environment configuration
|
|
define( 'ABSPATH', '/var/www/html/' );
|
|
define( 'WP_DEBUG', true );
|
|
|
|
// Test suite configuration
|
|
define( 'WP_TESTS_DOMAIN', 'localhost' );
|
|
define( 'WP_TESTS_EMAIL', 'admin@localhost.test' );
|
|
define( 'WP_TESTS_TITLE', 'Test Blog' );
|
|
define( 'WP_PHP_BINARY', 'php' );
|
|
|
|
define( 'WP_TESTS_FORCE_KNOWN_BUGS', false );
|
|
define( 'WP_TESTS_CONFIG_FILE_PATH', __FILE__ );
|
|
|
|
// Prevent theme/plugin installation/updates
|
|
define( 'DISALLOW_FILE_MODS', true );
|
|
|
|
// Test with multisite disabled
|
|
define( 'WP_TESTS_MULTISITE', false );
|
|
|
|
// Load WordPress test environment
|
|
$table_prefix = 'wptests_'; |