Пакет: matlab.unittest.constraints
Компаратор для массивов ячеек
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 объект. 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)))