Пакет: matlab.unittest.constraints
Компаратор для объектов MATLAB или Java
ObjectComparator создает компаратор для объектов MATLAB ® или Java ®. Компаратор удовлетворен, еслиisequaln прибыль true. Однако, если класс ожидаемого значения определяет isequal метод, видимый или скрытый, но не isequaln способ, ObjectComparator использует этот метод для сравнения вместо isequaln.
ObjectComparator('Within', создает компаратор с использованием заданного допуска. tolObj)ObjectComparator сначала проверяет, что вызов isequaln или isequal прибыль true. В случае неуспешного завершения проверки ObjectComparator проверяет эквивалентный класс, размер и разреженность фактических и ожидаемых значений. Если эти проверки пройдут, ObjectComparator сравнение делегатов с предоставленным допуском, tolObj. Значение этого допуска должно быть того же класса, что и фактические и ожидаемые значения.
|
|
|
Конкретный допуск, используемый в конструкции компаратора, указанный как |
Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.
В большинстве случаев использование ObjectComparator экземпляр. IsEqualTo создает ограничение для проверки равенства между данными различных типов, включая объекты MATLAB и Java.
Использовать ObjectComparator экземпляр, когда необходимо переопределить сравнение, выполненное IsEqualTo класс. Например, если сравнение должно завершиться неудачей, если фактические и ожидаемые значения не являются объектами MATLAB, включите ObjectComparator экземпляр в тесте. В этом примере MATLAB создает исключение, поскольку фактические и ожидаемые значения являются числовыми скалярами.
import matlab.unittest.constraints.IsEqualTo import matlab.unittest.constraints.ObjectComparator exp = 5; act = exp; testCase = matlab.unittest.TestCase.forInteractiveUse; testCase.verifyThat(act,IsEqualTo(exp,'Using',ObjectComparator))