exponenta event banner

matlab.unittest.constraints.AnyElityOf класс

Пакет: matlab.unittest.constraints

Проверка соответствия какого-либо элемента массива ограничению

Описание

AnyElementOf создает прокси фактического значения для платформы. Прокси-сервер позволяет устройству записи тестов применять ограничение к каждому элементу массива, что гарантирует, что результат прохождения возникает, когда, по меньшей мере, один элемент массива удовлетворяет ограничению.

Предполагается, что вы используете этот класс через matlab.unittest квалификации, как показано в примерах. Класс не изменяет предоставленное фактическое значение, но служит оболочкой для выполнения анализа ограничений. Структура тестирования анализирует ограничение по элементам.

Строительство

AnyElementOf(actVal) создает экземпляр прокси, который проверяет, если какой-либо элемент предоставленного массива, actVal, соответствует ограничению. Тест проходит, если по крайней мере один элемент по отдельности удовлетворяет ограничению.

Совет

  • AnyElementOf проверяет, удовлетворяет ли какой-либо элемент предоставленного массива связанному ограничению. Однако существуют некоторые ограничения, такие как HasNaN и HasInf, что изначально проверить, если какой-либо из элементов удовлетворяет условию. В этих ситуациях использование AnyElementOf является ненужным и препятствует проведению квалификации.

Входные аргументы

actVal

Фактическое значение для проверки по ограничению

Свойства

ActualValue

Фактическое значение для проверки по ограничению. Задать это свойство через конструктор через actVal входной аргумент.

Копирование семантики

Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.

Примеры

свернуть все

Создайте тестовый пример для интерактивного тестирования.

import matlab.unittest.TestCase
import matlab.unittest.constraints.AnyElementOf

testCase = TestCase.forInteractiveUse;

Проверить, что по крайней мере один элемент actVal является конечным.

import matlab.unittest.constraints.IsFinite
actVal = [NaN, Inf, 5];
testCase.verifyThat(AnyElementOf(actVal), IsFinite)
Interactive verification passed.

Проверьте, что хотя бы один элемент фактического значения является сложным.

import matlab.unittest.constraints.IsReal
testCase.verifyThat(AnyElementOf([1+0i 4i]), ~IsReal)
Interactive verification passed.

Проверьте, что по крайней мере один элемент массива фактических значений меньше нуля.

import matlab.unittest.constraints.IsLessThan
testCase.verifyThat(AnyElementOf([1 5]), IsLessThan(0))
Interactive verification failed.

---------------------
Framework Diagnostic:
---------------------
All elements failed. The first element failed because:
--> IsLessThan failed.
    --> The value must be less than the maximum value.
    
    Actual Value:
             1
    Maximum Value (Exclusive):
             0

Actual Value Array:
         1     5

Ни один из элементов фактического значения не меньше нуля.