Main Content

matlab.unittest.constraints.StartsWithSubstring クラス

パッケージ: matlab.unittest.constraints
スーパークラス: matlab.unittest.constraints.BooleanConstraint

部分文字列で始まる string を指定する制約

構築

StartsWithSubstring(prefix) は、部分文字列で始まる string スカラーまたは文字ベクトルを指定する制約を作成します。この制約は、実際の値が、期待される接頭辞 prefix で始まる場合にのみ満たされます。

StartsWithSubstring(prefix,Name,Value) は、1 つ以上の Name,Value のペアの引数で指定された追加オプションをもつ制約を提供します。Name は一重引用符 ('') で囲まれていなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

入力引数

prefix

実際の値の先頭にあるテキスト。string スカラーまたは文字ベクトルとして指定します。prefix には、改行文字を含めることができます。

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

IgnoringCase

大文字小文字の区別を無視するインジケーター。false または true (logical 0 または 1) として指定します。

既定値: false

IgnoringWhitespace

空白文字を無視するインジケーター。false または true (logical 0 または 1) として指定します。IgnoringWhitespacetrue の場合、MATLAB® は実際の値と期待される値の両方からすべての空白文字を削除したうえで、制約が満たされているかどうかを判定します。

メモ

IgnoringWhitespacetrue の場合、入力引数 prefix には空白以外の文字が少なくとも 1 つ含まれていなければなりません。

既定値: false

プロパティ

IgnoreCase

制約で大文字と小文字が区別されるかどうかを示すインジケーター。名前と値のペアの引数 'IgnoringCase' で指定します。

IgnoreWhitespace

制約で空白が区別されるかどうかを示すインジケーター。名前と値のペアの引数 'IgnoringWhitespace' で指定します。

Prefix

実際の値の先頭にあるテキスト。入力引数 prefix で指定します。

コピーのセマンティクス

値。値クラスがコピー操作に与える影響については、オブジェクトのコピーを参照してください。

すべて折りたたむ

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.StartsWithSubstring

testCase = TestCase.forInteractiveUse;

実際の値を定義します。

actVal = 'This Is One Long Message';

actVal'This' で始まることをテストします。

testCase.verifyThat(actVal, StartsWithSubstring('This'))
Verification passed.

actVal'this is' で始まることをテストします。

testCase.verifyThat(actVal, StartsWithSubstring('this is'))
Verification failed.

---------------------
Framework Diagnostic:
---------------------
StartsWithSubstring failed.
--> The value does not start with the supplied prefix.

Actual char:
    This Is One Long Message
Expected Prefix:
    this is

既定では、制約 StartsWithSubstring は大文字と小文字を区別します。

このテストを、大文字と小文字の区別を無視してもう一度実行します。

testCase.verifyThat(actVal, StartsWithSubstring('this is', ...
    'IgnoringCase', true))
Verification passed.

actVal'thisisone' で始まることをテストします。テストにパスするよう、空白および大文字小文字の区別を無視する制約を構成します。

testCase.verifyThat(actVal, StartsWithSubstring('thisisone', ...
    'IgnoringCase', true, 'IgnoringWhitespace', true))
Verification passed.

actVal'long' で始まらないことをアサートします。

testCase.assertThat(actVal, ~StartsWithSubstring('Long'))
Assertion passed.