use of org.ovirt.engine.core.common.action.ActionReturnValue in project ovirt-engine by oVirt.
the class FrontendActionTest method testrunMultipleActions_multipleaction_success_first_failure_second_success.
/**
* Run the following test case.
* <ol>
* <li>Run MultipleActions with multiple actions, first failure, and second success.</li>
* <li>Check to make sure the failure callback is called for the first action</li>
* <li>Make sure the success callback is never called for the second action</li>
* </ol>
*/
@Test
public void testrunMultipleActions_multipleaction_success_first_failure_second_success() {
List<ActionType> actionTypes = new ArrayList<>();
actionTypes.add(ActionType.AddDisk);
actionTypes.add(ActionType.AddBricksToGlusterVolume);
List<ActionParametersBase> testParameters = new ArrayList<>();
testParameters.add(new ActionParametersBase());
testParameters.add(new ActionParametersBase());
List<IFrontendActionAsyncCallback> callbacks = new ArrayList<>();
callbacks.add(mockActionCallback);
callbacks.add(mockActionCallback);
frontend.runMultipleActions(actionTypes, testParameters, callbacks, mockActionFailureCallback, testState);
verify(mockService).runAction(eq(ActionType.AddDisk), eq(testParameters.get(0)), callbackAction.capture());
ActionReturnValue returnValue = new ActionReturnValue();
returnValue.setValid(false);
returnValue.setSucceeded(false);
callbackAction.getValue().onSuccess(returnValue);
verify(mockActionFailureCallback).executed(callbackParam.capture());
assertEquals(returnValue, callbackParam.getValue().getReturnValue());
// Second call to runAction, the size of the parameters should have decreased
verify(mockService, never()).runAction(eq(ActionType.AddBricksToGlusterVolume), eq(testParameters.get(0)), callbackAction.capture());
verifyAsyncActionStartedAndSucceeded();
}
use of org.ovirt.engine.core.common.action.ActionReturnValue in project ovirt-engine by oVirt.
the class FrontendActionTest method testHandleActionResult_isRaiseErrorModalPanel_actionMessageSize_1_or_less.
/**
* Run the following test case.
* <ol>
* <li>Run a single action</li>
* <li>Return logical failure, validate=false.</li>
* <li>isRaiseErrorModalPanel returns true.</li>
* <li>Check to make sure the failure event is fired</li>
* <li>Check to make sure the callback is called</li>
* </ol>
* Test just the handler method.
*/
@Test
public void testHandleActionResult_isRaiseErrorModalPanel_actionMessageSize_1_or_less() {
EngineFault testFault = new EngineFault();
when(mockEventsHandler.isRaiseErrorModalPanel(ActionType.AddDisk, testFault)).thenReturn(true);
ActionParametersBase testParameters = new ActionParametersBase();
ActionReturnValue returnValue = new ActionReturnValue();
returnValue.setFault(testFault);
// $NON-NLS-1$
returnValue.setDescription("This is a description");
// Yes this is the default, but to make sure.
returnValue.setValid(false);
frontend.handleActionResult(ActionType.AddDisk, testParameters, returnValue, mockActionCallback, testState, true);
verify(mockActionCallback).executed(callbackParam.capture());
// $NON-NLS-1$
assertEquals("Parameters should match", testParameters, callbackParam.getValue().getParameters());
// $NON-NLS-1$
assertEquals("Result should match", returnValue, callbackParam.getValue().getReturnValue());
// $NON-NLS-1$
assertEquals("States should match", testState, callbackParam.getValue().getState());
assertEquals(// $NON-NLS-1$
"Action type should match", // $NON-NLS-1$
ActionType.AddDisk, callbackParam.getValue().getActionType());
ArgumentCaptor<FrontendFailureEventArgs> failureCaptor = ArgumentCaptor.forClass(FrontendFailureEventArgs.class);
verify(mockFrontendFailureEvent).raise(eq(Frontend.class), failureCaptor.capture());
assertEquals(// $NON-NLS-1$ //$NON-NLS-2$
"Descriptions should match", // $NON-NLS-1$ //$NON-NLS-2$
"This is a description", failureCaptor.getValue().getMessages().get(0).getDescription());
assertEquals(// $NON-NLS-1$ //$NON-NLS-2$
"Text should match", // $NON-NLS-1$ //$NON-NLS-2$
NO_MESSAGE, failureCaptor.getValue().getMessages().get(0).getText());
}
use of org.ovirt.engine.core.common.action.ActionReturnValue in project ovirt-engine by oVirt.
the class FrontendActionTest method testHandleActionResult_SucceededFalse.
/**
* Run the following test case.
* <ol>
* <li>Run a single action</li>
* <li>Return logical failure, validate=true.</li>
* <li>Get succeeded is false.</li>
* <li>IsSyncronious is true.</li>
* <li>showDialog is true.</li>
* <li>Check to make sure the failure event is fired</li>
* <li>Check to make sure the callback is called</li>
* </ol>
* Test just the handler method.
*/
@Test
public void testHandleActionResult_SucceededFalse() {
ActionParametersBase testParameters = new ActionParametersBase();
ActionReturnValue returnValue = new ActionReturnValue();
returnValue.setValid(true);
returnValue.setIsSynchronous(true);
// Yes this is the default, but to make sure.
returnValue.setSucceeded(false);
EngineFault testFault = new EngineFault();
returnValue.setFault(testFault);
frontend.handleActionResult(ActionType.AddDisk, testParameters, returnValue, mockActionCallback, testState, true);
verify(mockActionCallback).executed(callbackParam.capture());
// $NON-NLS-1$
assertEquals("Parameters should match", testParameters, callbackParam.getValue().getParameters());
// $NON-NLS-1$
assertEquals("Result should match", returnValue, callbackParam.getValue().getReturnValue());
// $NON-NLS-1$
assertEquals("States should match", testState, callbackParam.getValue().getState());
assertEquals(// $NON-NLS-1$
"Action type should match", // $NON-NLS-1$
ActionType.AddDisk, callbackParam.getValue().getActionType());
verify(mockEventsHandler).runActionExecutionFailed(ActionType.AddDisk, testFault);
}
use of org.ovirt.engine.core.common.action.ActionReturnValue in project ovirt-engine by oVirt.
the class GWTRPCCommunicationProviderTest method testGetOperationResult_One_of_Two.
@Test
public void testGetOperationResult_One_of_Two() {
VdcOperation<ActionType, ActionParametersBase> testOperation1 = new VdcOperation<>(ActionType.ActivateVds, new ActionParametersBase(), null);
VdcOperation<ActionType, ActionParametersBase> testOperation2 = new VdcOperation<>(ActionType.AddBookmark, new ActionParametersBase(), null);
List<VdcOperation<?, ?>> testOperationList = new ArrayList<>();
testOperationList.add(testOperation2);
List<VdcOperation<?, ?>> allOperationList = new ArrayList<>();
allOperationList.add(testOperation1);
allOperationList.add(testOperation2);
ActionReturnValue testResult1 = new ActionReturnValue();
ActionReturnValue testResult2 = new ActionReturnValue();
List<ActionReturnValue> allResults = new ArrayList<>();
allResults.add(testResult1);
allResults.add(testResult2);
List<?> result = testProvider.getOperationResult(testOperationList, allOperationList, allResults);
// $NON-NLS-1$
assertEquals("Result should have one results", 1, result.size());
// $NON-NLS-1$
assertEquals("Result should match", testResult2, result.get(0));
}
use of org.ovirt.engine.core.common.action.ActionReturnValue in project ovirt-engine by oVirt.
the class GWTRPCCommunicationProviderTest method testTransmitOperationAction_failure.
@Test
public void testTransmitOperationAction_failure() {
ActionParametersBase testParameters = new ActionParametersBase();
final List<VdcOperation<ActionType, ActionParametersBase>> operationList = new ArrayList<>();
// $NON-NLS-1$
final Exception testException = new Exception("This is an exception");
final VdcOperation<ActionType, ActionParametersBase> testOperation = new VdcOperation<>(ActionType.AddDisk, testParameters, new VdcOperationCallback<VdcOperation<ActionType, ActionParametersBase>, ActionReturnValue>() {
@Override
public void onSuccess(VdcOperation<ActionType, ActionParametersBase> operation, ActionReturnValue result) {
// $NON-NLS-1$
fail("Should not get here");
}
@Override
public void onFailure(VdcOperation<ActionType, ActionParametersBase> operation, Throwable exception) {
// $NON-NLS-1$
assertEquals("Operations should match", operationList.get(0), operation);
// $NON-NLS-1$
assertEquals("Exceptions should match", testException, exception);
}
});
operationList.add(testOperation);
testProvider.transmitOperation(testOperation);
verify(mockService).runAction(eq(ActionType.AddDisk), eq(testParameters), actionCallback.capture());
actionCallback.getValue().onFailure(testException);
}
Aggregations