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.