matlab.unittest.constraints.IsSubstringOf class

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

Ограничительная подстрока определения другой строки

Конструкция

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

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

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

superstring

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

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

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

'IgnoringCase'

Индикатор, чтобы игнорировать регистр, заданный как false или true логический0 или 1).

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

'IgnoringWhitespace'

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

Примечание

Когда IgnoringWhitespace true, входной параметр superstring должен содержать по крайней мере один непробельный символ.

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

'WithCount'

Число раз superstring должен содержать фактическое значение, заданное как положительное целое число.

Среда тестирования использует count функционируйте, чтобы считать случаи фактического значения. Когда вы задаете пустую подстроку, count функционируйте считает пустые строки вначале и конец superstring и между каждой парой его символов. Другими словами, если superstring имеет N символы, это также имеет N+1 пустые подстроки.

Свойства

IgnoreCase

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

IgnoreWhitespace

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

Superstring

Суперпредставьте в виде строки, который включает фактическое значение, заданное во входном параметре, superstring.

Примеры

свернуть все

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

import matlab.unittest.TestCase
import matlab.unittest.constraints.IsSubstringOf

testCase = TestCase.forInteractiveUse;

Задайте строку фактического значения.

S = string('This Is One Long String');

Протестируйте это фактическое значение 'One' содержится в S.

testCase.verifyThat('One', IsSubstringOf(S))
Verification passed.

Протестируйте это фактическое значение 'long' содержится в S.

testCase.verifyThat('long', IsSubstringOf(S))
Verification failed.
    ---------------------
    Framework Diagnostic:
    ---------------------
    IsSubstringOf failed.
    --> The value is not found within the superstring.
    
    Actual char:
        long
    Expected Superstring:
        "This Is One Long String"

По умолчанию, IsSubstringOf ограничение является чувствительным к регистру.

Повторите тестовый регистр игнорирующего.

testCase.verifyThat('long', IsSubstringOf(S, ...
    'IgnoringCase', true))
Verification passed.

Протестируйте это фактическое значение 'is' содержится в S дважды. Для теста, чтобы передать, сконфигурируйте ограничение, чтобы игнорировать регистр.

testCase.verifyThat('is', IsSubstringOf(S, ...
    'WithCount', 2, 'IgnoringCase', true))
Verification passed.

Протестируйте это фактическое значение 'thisisone' содержится в S. Для теста, чтобы передать, сконфигурируйте ограничение, чтобы проигнорировать пробел и случай.

testCase.verifyThat('thisisone', IsSubstringOf(S, ...
    'IgnoringCase', true, 'IgnoringWhitespace', true))
Verification passed.

Утверждайте что фактическое значение 'longer' не содержится в S.

testCase.assertThat('Longer', ~IsSubstringOf(S))
Assertion passed.