matlab.unittest.constraints.ObjectComparator 클래스
패키지: matlab.unittest.constraints
MATLAB 객체 또는 Java 객체용 비교 연산자
생성
ObjectComparator
는 MATLAB® 객체 또는 Java® 객체에 대한 비교 연산자를 만듭니다. isequaln
이 true
를 반환하면 비교 연산자를 충족합니다. 그러나, 예상 값의 클래스가 isequaln
메서드가 아니라 isequal
메서드를 정의하는 경우 ObjectComparator
는 isequaln
대신 이 메서드를 사용하여 비교합니다. 이때, 이 메서드가 가시적 메서드인지 숨겨진 메서드인지는 상관이 없습니다.
ObjectComparator('Within',
는 지정된 허용오차를 사용하여 비교 연산자를 만듭니다. tolObj
)ObjectComparator
는 isequaln
또는 isequal
호출이 true
를 반환하는지 먼저 확인합니다. 확인 결과가 실패이면 ObjectComparator
는 실제 값과 예상 값을 비교하여 클래스, 크기 및 희소성이 동일한지 확인합니다. 확인 결과가 통과이면 ObjectComparator
는 제공된 허용오차 tolObj
와 비교합니다. 이 허용오차 값은 실제 값과 예상 값의 클래스와 동일해야 합니다.
입력 인수
|
|
속성
|
비교 연산자를 생성할 때 사용되는 특정 허용오차로, |
복사 의미 체계
값입니다. 값 클래스가 복사 작업에 미치는 영향에 대한 내용은 객체 복사 항목을 참조하십시오.
예제
팁
대부분의 경우에는
ObjectComparator
인스턴스를 사용할 필요가 없습니다.IsEqualTo
클래스는 MATLAB과 Java 객체를 포함하여 여러 유형의 데이터 간의 동일성을 테스트하는 제약 조건을 만듭니다.IsEqualTo
클래스가 수행하는 비교를 재정의해야 하는 경우ObjectComparator
인스턴스를 사용하십시오. 예를 들어, 실제 값과 예상 값이 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))