У меня машина с Windows 7, и я хочу запускать некоторые модульные тесты автоматически с помощью специального плагина WordPress.Мне нужно, чтобы phpunit
и wp-cli
были установлены как зависимости dev через composer
.
Я установил wp-cli
глобально через composer
, но команда
wp scaffold plugin-tests my-plugin
имеет следующий вывод:
Error: 'scaffold' is not a registered wp command. See 'wp help' for available commands.
Я знаю, что wp-cli
работает в Unix-подобной среде, поэтому я установил cyqwin
и снова загрузил wp-cli-.phar
и сделал его исполняемым иустановлен в папку /user/local/bin/
(согласно инструкциям здесь )
Снова запущен
wp scaffold plugin-tests my-plugin
Я получаю
Error: This does not seem to be a WordPress installation.
Pass --path=`path/to/wordpress` or run `wp core download`.
Хорошо, это я могу понять.
Однако в обеих установках есть пустая папка packages_dir
(возможное исправление может быть , эта проблема здесь )
$ /usr/local/bin/wp --info
OS: CYGWIN_NT-6.1 2.11.2(0.329/5/3) 2018-11-08 14:34 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php
PHP version: 7.1.16
php.ini used: /etc/php.ini
WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.1.0
В общем, я хочу создать пакет composer
для небольшого плагина WordPress с некоторыми модульными тестами.
Вопрос 1:
следует ли мне воссоздать пакет composer
в cyqwin
(т.е.установить composer через cyqwin и т. д.) или пакет composer
, как он у меня изначально создан в windows, достаточно?
Вопрос 2:
Нужно ли устанавливать wp-cli
как зависимость dev в composer.json
или нет?И если я установлю это как зависимость, которую wp-cli
будет использовать на другом компьютере пользователя?
Мой composer.json
прямо сейчас будет следующим:
{
"name": "user/wp-nonce",
"description": "wp-nonce for WP OOP manner",
"authors": [
{
"name": "someone",
"email": "foo@bar.com"
}
],
"type": "library",
"license": "FOSS",
"minimum-stability": "dev",
"require": {
"php": ">=7.0.0"
},
"require-dev": {
"phpunit/phpunit": "5.*",
"wp-cli/wp-cli": "^2.1",
"inpsyde/php-coding-standards": "^0.13"
},
"autoload": {
"psr-4": {
"WpNonce\\": "src/"
}
}
}
Вопрос 3:
Кажется, я не могу найти в Интернете хорошие инструкции по настройке пакета composer
для плагина wordpress с юнит-тестами (используя wp-cli
).Как синхронизировать мои настройки XAMPP (mysql, php, apache) с загрузкой wp
и юнит-тестами для плагина?