Add PHPUnit test suite with Brain\Monkey (v0.1.6)
All checks were successful
Create Release Package / PHP Lint (push) Successful in 1m2s
Create Release Package / PHPUnit Tests (push) Successful in 46s
Create Release Package / Build Release (push) Successful in 50s

Add test infrastructure for isolated unit testing without WordPress/WooCommerce:
- 27 tests (54 assertions) covering TemplateOverride and WooCommerceExtension
- Brain\Monkey for WordPress function mocking, class stubs for TwigService and WC_Product
- PHPUnit test job added to Gitea CI pipeline between lint and build-release
- Test artifacts excluded from release packages

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-01 03:48:19 +01:00
parent 784b400c46
commit 4031a1c8aa
14 changed files with 2678 additions and 10 deletions

14
tests/bootstrap.php Normal file
View File

@@ -0,0 +1,14 @@
<?php
/**
* PHPUnit bootstrap file.
*
* Loads Composer autoloader and class stubs required
* for unit testing outside of WordPress/WooCommerce.
*/
// Composer autoloader (loads WcBootstrap\* classes + Brain\Monkey).
require_once dirname(__DIR__) . '/vendor/autoload.php';
// Class stubs (WordPress / WooCommerce / parent theme).
require_once __DIR__ . '/Stubs/TwigService.php';
require_once __DIR__ . '/Stubs/WcProduct.php';