Chế độ nhạo một phương thức clone()
trên giao diện dường như không còn hoạt động với Mockito 2.1.0. Mã dưới đây hoạt động tốt với Mockito 1.10.19 nhưng ném một IllegalAccessError
với Mockito 2.1.0:Phương thức sao chép giao diện giả mạo
public interface CloneableInterface extends Cloneable {
CloneableInterface clone();
}
public class CloneableInterfaceTest {
@Test
public void test() {
CloneableInterface i = Mockito.mock(CloneableInterface.class);
Mockito.when(i.clone()).thenReturn(i); // Throws IllegalAccessError
}
}
Kết quả chạy trên thử nghiệm:
java.lang.IllegalAccessError: CloneableInterface$MockitoMock$833899610.clone()LCloneableInterface;
Tôi đã kiểm tra danh sách lỗi Mockito và googled một chút nhưng không tìm thấy gì cả. Muốn kiểm tra cộng đồng SO trước khi gửi báo cáo lỗi với nhóm mockito.
Môi trường: JDK 1.8.0_102, JUnit 4.11, Mockito 2.1.0, Gradle 3,0, của Windows 10
EDIT: Filed một lỗi với đội Mockito here
Chà, sửa chữa sau ~ 35 phút sau khi báo cáo lỗi này trên githum. Rất ấn tượng. – jenglert