Учитывая следующий код:
<?php
class Language
{
private $code;
public function __construct(string $code)
{
$this->code = $code;
}
}
$lang = new Language();
Я получу ArgumentCountError, как это:
Uncaught ArgumentCountError: Too few arguments
Теперь я хотел бы протестировать и убедиться, что это поведение с модульным тестом phpUnit, как этот:
class LanguageTest
{
public function testLanguageConstructorWillRequireACode()
{
$language = new Language();
$this->expectException(MissingArgumentException::class);
}
}
Но php interpeter вызывает ошибку, а не исключение.
Какой самый идиоматичный и правильный способ сделать это?
Задача ещё не решена.
Других решений пока нет …