模拟类型转换对象

gmo*_*ode 5 java jsf mocking mockito primefaces

我的bean中有一个简单的方法来处理primefaces数据表中的单元格编辑事件。方法如下:

public void onCellEdit(CellEditEvent event) {
    Object oldValue = event.getOldValue();
    Object newValue = event.getNewValue();

    User user = (User) ((DataTable) event.getComponent()).getRowData();
    if (!newValue.equals(oldValue))
    user.setUsername(oldValue.toString());
                     ....
}
Run Code Online (Sandbox Code Playgroud)

我该如何嘲笑: User user = (User) ((DataTable) event.getComponent()).getRowData();

ksw*_*ghs 6

CellEditEvent mockEvent = Mockito.mock(CellEditEvent.class);
DataTable mockDataTable = Mockito.mock(DataTable.class);

Mockito.when(mockEvent.getComponent()).thenReturn(mockDataTable);
Mockito.when(mockDataTable.getRowData()).thenReturn(userObj);
Run Code Online (Sandbox Code Playgroud)