Я работал над некоторыми небольшими проектами, используя платформу GWT MVP + платформу GWT Editors.У меня есть интерфейсы Views с полями, объявленными как:
@Path("field")
IsEditor<ValueBoxEditor<Long>> getField();
Реализации представлений выглядят следующим образом:
@UiField
IsEditor<ValueBoxEditor<Long>> field;
public IsEditor<ValueBoxEditor<Long>> getField(){
return field;
}
В моих действиях у меня есть ссылки на соответствующие представления и когда я должен сделать (вActivity) что-то вроде этого:
view.getField.setEnable(true);
Мне нужно выполнить приведение к
((ValueBoxBase<Long>)view.getField()).setEnable(true);
После этого я не могу проверить этот модуль, потому что в своем тесте я определяю поведение View длявозвращая Mock (IsEditor<ValueBoxEditor<Long>>)
on view.getFiled()
, в результате я получаю:
java.lang.ClassCastException: com.google.gwt.editor.client.IsEditor$
$EnhancerByMockitoWithCGLIB$$e8c00c36 cannot be cast to
com.google.gwt.user.client.ui.ValueBoxBase
Как лучше всего вызывать методы компонентов Views из Activity без выполнения приведения?