Main Content

matlab.unittest.constraints.HasNaN クラス

名前空間: matlab.unittest.constraints
スーパークラス: matlab.unittest.constraints.BooleanConstraint

配列に NaN 値があるかどうかをテスト

説明

matlab.unittest.constraints.HasNaN クラスは、配列に NaN 値があるかどうかをテストするための制約を提供します。

作成

説明

c = matlab.unittest.constraints.HasNaN は、配列に NaN 値があるかどうかをテストするための制約を作成します。この制約は、少なくとも 1 つの NaN 値を含む数値配列で満たされます。

すべて折りたたむ

HasNaN 制約を使用して、数値配列をテストします。

最初に、この例で使用するクラスをインポートします。

import matlab.unittest.TestCase
import matlab.unittest.constraints.HasNaN

対話型テスト用にテスト ケースを作成します。

testCase = TestCase.forInteractiveUse;

NaNHasNaN 制約を満たすことを検証します。

testCase.verifyThat(NaN,HasNaN)
Verification passed.

ベクトル [1 1 2 3 5 8 13]NaN 値があるかどうかをテストします。テストは失敗します。

testCase.verifyThat([1 1 2 3 5 8 13],HasNaN)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    HasNaN failed.
    --> At least one element must be NaN.
    
    Actual Value:
         1     1     2     3     5     8    13

[-Inf 5 NaN] をテストします。ベクトルに NaN 値が含まれているため、テストはパスします。

testCase.verifyThat([-Inf 5 NaN],HasNaN)
Verification passed.

虚数部が NaN である複素数が制約を満たすかどうかをテストします。テストはパスします。

testCase.verifyThat(3+1i*NaN,HasNaN)
Verification passed.

行列 [1 NaN; -Inf 3]NaN 値がないかどうかをテストします。テストは失敗します。

testCase.verifyThat([1 NaN; -Inf 3],~HasNaN)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    Negated HasNaN failed.
    --> All elements must be non-NaN.
        Failing indices:
            3
    
    Actual Value:
         1   NaN
      -Inf     3

バージョン履歴

R2013a で導入