Main Content

matlab.unittest.constraints.IsFolder クラス

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

値がフォルダーであるかどうかをテスト

説明

matlab.unittest.constraints.IsFolder クラスは、値がフォルダーを表すかどうかをテストするための制約を提供します。

作成

説明

c = matlab.unittest.constraints.IsFolder は、値がフォルダーを表すかどうかをテストするための制約を作成します。この制約は、既存のフォルダーのパスを指定する string スカラーまたは文字ベクトルで満たされます。値は相対パスにすることができますが、相対パスは現在のフォルダー内になければなりません。それ以外の場合、値は絶対パスでなければなりません。

すべて折りたたむ

IsFolder 制約を使用して、フォルダーが存在するかどうかをテストします。

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.IsFolder

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

testCase = TestCase.forInteractiveUse;

サブフォルダー myFolder が存在しない場合は現在のフォルダー内に作成します。次に、myFolder にファイルを追加します。

if ~isfolder("myFolder")
    mkdir myFolder
end
filename = "myFolder" + filesep + "myFile.dat";
writematrix(magic(20),filename)

現在のフォルダーに myFolder が存在することを検証します。

testCase.verifyThat("myFolder",IsFolder)
Verification passed.

myFolder 内のファイルが IsFolder 制約を満たすかどうかをテストします。制約を満たすのはフォルダーを表す値のみであるため、テストは失敗します。

testCase.verifyThat(filename,IsFolder)
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    IsFolder failed.
    --> Value does not point to an existing folder.
    --> Current folder during evaluation:
            'C:\work'
    
    Actual Value:
        "myFolder\myFile.dat"

フォルダーを削除し、フォルダーがもう存在しないかどうかをテストします。テストはパスします。

rmdir myFolder s
testCase.verifyThat("myFolder",~IsFolder)
Verification passed.

バージョン履歴

R2018a で導入