// Modules/User/Tests/Datasets/UserRegistrationDataset.php
dataset('invalid user data', [
[['email' => 'invalid', 'password' => 'short'], 'email'],
]);
< /code>
В настоящее время, в каждом тестовом файле, который использует этот набор данных, я должен сделать: < /p>
require_once __DIR__ . '/../../Datasets/UserRegistrationDataset.php';
Я хотел бы избежать вручную, требуя файла набора данных в каждом тесте. Я попытался загрузить его через пользовательскую службу ServiceProvider, но вредители бросают эту ошибку: < /p>
assertionError < /p>
assert(array_key_exists(self::FILE, $trace))
Кажется, что DataSet () должен называться только тогда, когда вредитель полностью загружен, а не из жизненного цикла приложения Laravel. или внутри папки Tests в корне проекта. < /p>
Defining a PestServiceProvider and requiring the dataset there →
Requiring the dataset in Modules/User/Tests/Pest.php →
Placing datasets in tests/Pest.php →
< /code>
способ автоматической загрузки наборов данных, специфичных для модуля, в идеале внутри собственного Fest.php каждого модуля или чистого решения, которое поддерживает наборы данных без необходимости вручную для их тестового файла.Laravel 11
Pest PHP 3.8
nWidart/laravel-modules
Подробнее здесь: https://stackoverflow.com/questions/796 ... quiring-th