Пакет Composer для плагинов WordPress и модульного тестирования с использованием wp-cli на Windows (Cygwin)? - PullRequest
0 голосов
/ 29 января 2019

У меня машина с 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 и юнит-тестами для плагина?

...