matlab.unittest.constraints. Класс StringComparator

Пакет: matlab.unittest.constraints

Компаратор для двух строк, символьных массивов или массивов ячеек символьных массивов

Конструкция

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

StringComparator(Name,Value) создает компаратор с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

Входные параметры

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

'IgnoringCase'

Индикатор, если компаратор нечувствителен к регистру, задан как false или true (logical 0 или 1). Когда это - false, компаратор чувствителен к регистру.

По умолчанию: false

'IgnoringWhitespace'

Индикатор, если компаратор нечувствителен к пробельным символам, заданным как false или true (logical 0 или 1). Когда это - false, компаратор чувствителен к пробельным символам. Пробельные символы состоят из пробела, перевода формата, новой строки, возврата каретки, горизонтальной вкладки и вертикальной вкладки.

По умолчанию: false

Свойства

IgnoreCase

Индикатор, если компаратор нечувствителен к регистру, задан в аргументе пары "имя-значение", 'IgnoringCase'

IgnoreWhitespace

Индикатор, если компаратор нечувствителен к пробельным символам, заданным в аргументе пары "имя-значение", 'IgnoringWhitespace'

Примеры

свернуть все

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.StringComparator
import matlab.unittest.constraints.IsEqualTo

testCase = TestCase.forInteractiveUse;

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

expected = 'coffee';
actual = 'coffee';
testCase.verifyThat(actual,IsEqualTo(expected, ...
    'Using', StringComparator))
Interactive verification passed.

Измените фактический вектор символов и повторите сравнение.

expected = 'coF Fee';
testCase.verifyThat(actual,IsEqualTo(expected, ...
    'Using', StringComparator))
Interactive verification failed.

---------------------
Framework Diagnostic:
---------------------
IsEqualTo failed.
--> StringComparator failed.
    --> The character arrays are not equal.
    
    Actual char:
        coffee
    Expected char:
        coF Fee

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

testCase.verifyThat(actual,IsEqualTo(expected, ...
    'Using', StringComparator('IgnoringCase', true, ...
    'IgnoringWhitespace', true)))
Interactive verification passed.

Смотрите также

|

Введенный в R2013a