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.phplib/include.phptests/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