publishpress / version-loader-generator
为PublishPress上的库生成版本加载文件的Composer脚本
1.1.8
2023-04-25 21:05 UTC
Requires
- ext-json: *
Requires (Dev)
- php: >=7.2.5
- codeception/module-asserts: ^1.0
- codeception/module-filesystem: ^1.0
- codeception/util-universalframework: ^1.0
- lucatume/wp-browser: ^3.1
README
用于自动生成脚本并测试PublishPress上库的脚本文档。
脚本将在库中生成三个文件
lib/Versions.php
lib/include.php
tests/wpunit/VersionsCest.php
如何使用
此库应作为开发需求包含在目标库中
composer require --dev publishpress/version-loader-generator
安装后,它将在vendor/bin
文件夹中可用。
需要在composer.json
文件中做一些设置才能正确生成文件
{ "extra": { "generator": { "lib-class-test": "interface_exists('PublishPress\\Psr\\Container\\ContainerInterface')", "action-initialize-priority": "-190", "action-register-priority": "-200" } } }
lib-class-test
:这是一段PHP代码片段,将检查目标库是否已加载。action-register-priority
:一个负整数,用作注册库的plugins_loaded
动作的优先级。注册应该始终在初始化之前完成。action-initialize-priority
:一个负整数,用作初始化库的plugins_loaded
动作的优先级。初始化应该始终在使用库的插件初始化之前完成。
我们建议使用前缀库的插件使用具有优先级-20
或更高的plugins_loaded
动作来初始化插件,而不是在运行时初始化它。
在每次更新/安装时运行生成器的composer脚本。以下示例中,我们还使用了Strauss来为相应的库添加前缀
{ "scripts": { "strauss": [ "vendor/bin/strauss" ], "generate-files": "vendor/bin/version-loader-generator", "post-install-cmd": [ "@strauss", "@generate-files" ], "post-update-cmd": [ "@strauss", "@generate-files" ] } }
如何测试此脚本
vendor/bin/codecept run unit
如何测试目标库
确保在目标库中正确配置了Codeception,以便运行WPUnit测试。
将以下composer脚本添加到composer.json
文件中
{ "scripts": { "test": "vendor/bin/codecept run wpunit" } }
然后您可以只需运行
composer test