exponenta event banner

matlab.unittest.constraints.StaresWeySubstring класс

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

Ограничение, указывающее строку, начиная со подстроки

Строительство

StartsWithSubstring(prefix) создает ограничение, определяющее строковый скалярный или символьный вектор, начинающийся с подстроки. Ограничение выполняется только в том случае, если фактическое значение начинается с ожидаемого префикса, prefix.

StartsWithSubstring(prefix,Name,Value) предоставляет ограничение с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары. Name должно отображаться внутри отдельных кавычек (''). Можно указать несколько аргументов пары имя-значение в любом порядке как Name1,Value1,...,NameN,ValueN.

Входные аргументы

prefix

Текст в начале фактического значения, заданный как строковый скалярный или символьный вектор. prefix может включать символы новой строки.

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

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

'IgnoringCase'

Индикатор для игнорирования регистра, указанный как false или true (logical 0 или 1).

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

'IgnoringWhitespace'

Индикатор для игнорирования пробела, указанный как false или true (logical 0 или 1). Если IgnoringWhitespace является true, MATLAB ® удаляет все символы пробела как из фактического значения, так и из ожидаемого значения, прежде чем определить, удовлетворяется ли ограничение.

Примечание

Когда IgnoringWhitespace является true, входной аргумент prefix должен содержать по крайней мере один символ, не являющийся пробелом.

По умолчанию: 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.