matlab.unittest.constraints.IsFinite class

Пакет: matlab.unittest.constraints
Суперклассы: matlab.unittest.constraints.BooleanConstraint

Ограничение, задающее конечное значение

Конструкция

IsFinite создает ограничение, которое способно определить, являются ли все значения массива фактического значения конечными. Это ограничение выполняется, только если массив фактического значения не содержит бесконечных или NaN значения.

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

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

Примеры

свернуть все

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.IsFinite

testCase = TestCase.forInteractiveUse;

Проверьте, что значение 17 удовлетворяет ограничению.

testCase.verifyThat(17, IsFinite)
Interactive verification passed.

Предположим, что массив полностью конечен.

testCase.assertThat([0 1 1 2 3 5 8 13], IsFinite)
Interactive assertion passed.

Проверьте, что массив полностью конечен.

testCase.verifyThat([-Inf 5 NaN], IsFinite)
Interactive verification failed.

---------------------
Framework Diagnostic:
---------------------
IsFinite failed.
--> All elements must be finite-valued.
    Failing indices:
             1     3

Actual Value:
      -Inf     5   NaN

Массив содержит бесконечное значение.

Проверяйте, удовлетворяет ли ограничение комплексное число, бесконечное в мнимой детали.

testCase.assertThat(42+Inf*1i, IsFinite)
Interactive assertion failed.

---------------------
Framework Diagnostic:
---------------------
IsFinite failed.
--> The value must be finite.

Actual Value:
     42.000000000000000 +               Infi
Assertion failed.

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

testCase.verifyThat([NaN -7+NaN*1i], ~IsFinite)
Interactive verification passed.

См. также

| |