exponenta event banner

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

Пакет: matlab.unittest.constraints

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

Описание

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

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

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

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

Совет

  • EveryElementOf проверяет, удовлетворяет ли каждый элемент предоставленного массива связанному ограничению. Однако существуют некоторые ограничения, такие как IsEqualTo и IsGreaterThan, IsLessThan, которая изначально проверяет, удовлетворяют ли все элементы в массиве условию. В этих ситуациях использование EveryElementOf является ненужным и препятствует проведению квалификации.

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

actVal

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

Свойства

ActualValue

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

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

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

Примеры

свернуть все

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.EveryElementOf

testCase = TestCase.forInteractiveUse;

Проверить, что каждый элемент actVal меньше 55.

import matlab.unittest.constraints.IsLessThan
actVal = [1 1 2 3 5 8 13 21 34];
testCase.verifyThat(EveryElementOf(actVal), IsLessThan(55))
Interactive verification passed.

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

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

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

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

---------------------
Framework Diagnostic:
---------------------
At least one element failed.

Failing indices:
         1
The first failing 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

Только второй элемент меньше нуля.

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

import matlab.unittest.constraints.HasNaN
testCase.verifyThat(EveryElementOf([NaN 0/0 5]), HasNaN)
Interactive verification failed.

---------------------
Framework Diagnostic:
---------------------
At least one element failed.

Failing indices:
         3
The first failing element failed because:
--> HasNaN failed.
    --> The value must be NaN.
    
    Actual Value:
             5

Actual Value Array:
       NaN   NaN     5

Только третий элемент имеет NaN значение.