Class ContentsBase
Базовая ограничение для ограничений содержимого
Краткое описание методов
-
__construct() public
Конструктор
-
additionalFailureDescription() protected
Возвращает дополнительное описание ошибки, если необходимо.
-
count() public
Подсчитывает количество элементов ограничения.
-
evaluate() public
Оценивает ограничение для параметра $other.
-
exporter() protected
-
fail() protected
Выбрасывает исключение для заданного сравниваемого значения и описания теста.
-
failureDescription() protected
Возвращает описание ошибки.
-
failureDescriptionInContext() protected
Возвращает описание ошибки, когда это ограничение появляется в контексте выражения $operator.
-
matches() protected
Оценивает ограничение для параметра $other. Возвращает true, если ограничение выполняется, и false в противном случае.
-
reduce() protected
Уменьшает подвыражение, начиная с $this, пропуская вырожденные подвыражения, и возвращает первое дочернее ограничение, которое начинает несокращаемое подвыражение.
-
toString() public
Возвращает строковое представление объекта.
-
toStringInContext() protected
Возвращает пользовательское строковое представление объекта ограничения, когда он появляется в контексте выражения $operator.
Подробное описание методов
__construct() public
__construct(array<string> $contents, string $output)
Конструктор
Параметры
-
array<string>$contents Содержимое
-
string$output Тип вывода
additionalFailureDescription() protected
additionalFailureDescription(mixed $other): string
Возвращает дополнительное описание ошибки, если необходимо.
Функция может быть переопределена для предоставления дополнительной информации об ошибке, например, разницу.
Параметры
-
mixed$other оцениваемое значение или объект
Возвращает
stringcount() public
count(): int
Подсчитывает количество элементов ограничений.
Возвращает
intevaluate() public
evaluate(mixed $other, string $description = '', bool $returnResult = false): ?bool
Оценивает ограничение для параметра $other.
Если $returnResult установлено в false (по умолчанию), при неудаче генерируется исключение. В противном случае возвращается null.
Если $returnResult установлено в true, результат оценки возвращается как логическое значение: true в случае успеха, false в случае неудачи.
Параметры
- $other
-
string$description необязательно -
bool$returnResult необязательно
Возвращает
?boolИсключения
SebastianBergmann\RecursionContext\InvalidArgumentExceptionExpectationFailedExceptionexporter() protected
exporter(): Exporter
Возвращает
Exporterfail() protected
fail(mixed $other, string $description, ComparisonFailure $comparisonFailure = null): void
Генерирует исключение для заданного значения сравнения и описания теста.
Параметры
-
mixed$other оцениваемое значение или объект
-
string$description Дополнительная информация о тесте
-
ComparisonFailure$comparisonFailure необязательно
Возвращает
voidИсключения
SebastianBergmann\RecursionContext\InvalidArgumentExceptionExpectationFailedExceptionfailureDescription() protected
failureDescription(mixed $other): string
Возвращает описание ошибки.
В большинстве случаев начало сообщений об ошибках — "Failed asserting that". Этот метод должен возвращать вторую часть этого предложения.
Для предоставления дополнительной информации об ошибке можно использовать additionalFailureDescription.
Параметры
-
mixed$other оцениваемое значение или объект
Возвращает
stringИсключения
SebastianBergmann\RecursionContext\InvalidArgumentExceptionfailureDescriptionInContext() protected
failureDescriptionInContext(Operator $operator, mixed $role, mixed $other): string
Возвращает описание ошибки в контексте выражения $operator.
Цель этого метода — предоставить осмысленное описание ошибки в контексте операторов, таких как LogicalNot. Собственные ограничения PHPUnit поддерживаются LogicalNot по умолчанию, но внешне разработанные не имели способа предоставить правильные сообщения в этом контексте.
Метод должен возвращать пустую строку, если он сам не обрабатывает настройку.
Параметры
-
Operator$operator оператор $operator выражения
-
mixed$role роль ограничения $this в выражении $operator
-
mixed$other оцениваемое значение или объект
Возвращает
stringmatches() protected
matches(mixed $other): bool
Оценивает ограничение для параметра $other. Возвращает true, если ограничение выполняется, иначе — false.
Этот метод может быть переопределен для реализации алгоритма оценки.
Параметры
-
mixed$other значение или объект для оценки
Возвращает
boolreduce() protected
reduce(): self
Сокращает подвыражение, начиная с $this, пропуская вырожденные подвыражения, и возвращает первое ограничение-потомок, которое начинается с несокращаемого подвыражения.
Возвращает $this для терминальных ограничений и для операторов, которые начинают несокращаемые подвыражения, или ближайшего потомка $this, который начинает несокращаемое подвыражение.
Выражение ограничения может быть смоделировано как дерево с нетерминальными узлами (операторы) и терминальными узлами. Например:
LogicalOr (оператор, нетерминал)
- LogicalAnd (оператор, нетерминал) | + IsType('int') (терминал) | + GreaterThan(10) (терминал)
- LogicalNot (оператор, нетерминал)
- IsType('array') (терминал)
Вырожденное подвыражение — это часть дерева, которая фактически не вносит вклад в оценку выражения, в котором она появляется. Пример вырожденного подвыражения — это BinaryOperator, созданный с одним операндом или вложенными BinaryOperator, каждый из которых имеет один операнд. Выражение, включающее вырожденное подвыражение, эквивалентно сокращенному выражению с удаленным вырожденным подвыражением, например
LogicalAnd (оператор)
- LogicalOr (вырожденный оператор) | + LogicalAnd (вырожденный оператор) | + IsType('int') (терминал)
- GreaterThan(10) (терминал)
эквивалентно
LogicalAnd (оператор)
- IsType('int') (терминал)
- GreaterThan(10) (терминал)
потому что подвыражение
- LogicalOr
- LogicalAnd
- -
- LogicalAnd
является вырожденным. Вызов reduce() для объекта LogicalOr, а также LogicalAnd, должен вернуть экземпляр IsType('int').
Другие конкретные сокращения могут быть реализованы, например, каскад операторов LogicalNot
- LogicalNot
- LogicalNot +LogicalNot
- IsTrue
- LogicalNot +LogicalNot
может быть сокращено до
LogicalNot
- IsTrue
Возвращает
selftoString() public
toString(): string
Возвращает строковое представление объекта.
Возвращает
stringtoStringInContext() protected
toStringInContext(Operator $operator, mixed $role): string
Возвращает настраиваемое строковое представление объекта ограничения, когда он появляется в контексте выражения $operator.
Цель этого метода — предоставить осмысленное описательное строковое представление в контексте операторов, таких как LogicalNot. Собственные ограничения PHPUnit поддерживаются LogicalNot по умолчанию, но внешне разработанные не имели способа предоставить правильные строки в этом контексте.
Метод должен возвращать пустую строку, если он сам не обрабатывает настройку.
Параметры
-
Operator$operator оператор $operator выражения
-
mixed$role роль ограничения $this в выражении $operator
Возвращает
stringПодробное описание свойств
$contents protected
Тип
string$output protected
Тип
string
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Console.TestSuite.Constraint.ContentsBase.html