Пакет: matlab.unittest.constraints
Компаратор для массивов ячеек
The CellComparator сравнивает массивы ячеек.
CellComparator создает компаратор для массивов ячеек.
CellComparator( указывает компаратор, compObj)compObj, который задает компаратор, используемый для сравнения значений, содержащихся в массиве ячеек. По умолчанию компаратор камер поддерживает только пустые массивы ячеек.
CellComparator( предоставляет компаратору дополнительные опции, заданные одним или несколькими compObj,Name,Value)Name,Value аргументы в виде пар.
CellComparator( предоставляет компаратор для пустых массивов ячеек с дополнительными опциями, заданными одним или несколькими Name,Value)Name,Value аргументы в виде пар.
|
Объект компаратора |
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
|
Индикатор того, работает ли компаратор рекурсивно, указывается как Когда значение comp1 = CellComparator(StringComparator) comp2 = CellComparator(StringComparator,'Recursively', true) comp1 и comp2 поддерживает массивы ячеек строк и символьных массивов. Однако только comp2 поддерживает массивы ячеек, которые рекурсивно содержат в качестве элементов массивы ячеек или строки.
По умолчанию: |
|
Индикатор того, работает ли компаратор рекурсивно, заданный в аргументе пары "имя-значение", |
Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».
В большинстве случаев вы не обязаны использовать CellComparator объект. The IsEqualTo класс создает ограничение для проверки на равенство между данными различных типов, включая массивы ячеек.
Использование CellComparator объект, когда вам нужно переопределить сравнение, выполненное IsEqualTo класс. Например, если вы хотите, чтобы сравнение не прошло, когда массивы ячеек включают нечисловые значения, включите CellComparator объект в вашем тесте. В этом примере MATLAB® выдает исключение из-за C1 и C2 содержат нечисловые значения.
import matlab.unittest.constraints.IsEqualTo import matlab.unittest.constraints.CellComparator import matlab.unittest.constraints.NumericComparator C1 = {1,2,{3},'abc'}; C2 = C1; testCase = matlab.unittest.TestCase.forInteractiveUse; testCase.verifyThat(C2,IsEqualTo(C1,'Using',CellComparator(NumericComparator)))