PHPSpec и два определения пространства имен PSR-4 - PullRequest
0 голосов
/ 05 марта 2019

Извиняюсь заранее, если этот вопрос был задан где-то еще или даже здесь (результаты поиска не дали мне то, что я искал). Я хотел бы настроить свой основной файл так, чтобы он жил в моем собственном пространстве имен, например, где-то находится пространство имен приложения.

Ниже приведено описание структуры файла.

app/Rentals
src/Core

Фактически, имея в виду структуру каталогов, я могу получить следующую запись автозагрузки psr-4 в файле composer.json.

{
   ...,
     "psr-4": {
        "Rentals\\": "app/",
        "Selocrast\\": "src/"
    }
}

Наконец, я покажу вам мой текущий файл phpspec.yaml и конфигурацию, которую он содержит прямо сейчас.

suites:
  selocrast_suite:
    namespace: Selocrat

  rawson_suite:
    namespace: Rentals
    src_path: "%paths.config%/app"

  extensions:
    LeanPHP\PhpSpec\CodeCoverage\CodeCoverageExtension: ~

Как видно из файла конфигурации выше, я сделал несколько настроек, чтобы заставить работать хотя бы одно пространство имен (по умолчанию). С чем я борюсь, так это с несколькими наборами, указывающими на разные каталоги пространства имен.

Тип Rental \ Component \ Model \ Entity \ Simple создан, но не может быть загружен. Вам нужно настроить Au toloader?

Мне трудно двигаться дальше с этой настройкой. Это что-то, что PHPSpec применяет на уровне кода? Если нет, то что я могу делать не так?

Ниже приведена версия, в которой я нахожусь:

$ bin/phpspec --version
phpspec 4.3.2

Это вопрос создания расширения для управления моим вторичным пространством имен?

1 Ответ

0 голосов
/ 07 марта 2019

Я думаю, вы должны изменить конфигурационный файл следующим образом

suites:
  selocrast_suite:
    namespace: Selocrat
    psr4_prefix: Selocrat

  rawson_suite:
    namespace: Rentals
    psr4_prefix: Rentals
    src_path: "%paths.config%/app"

  [...]
...