return encoderDecoder.encodeServerActionResult(resultAdapter, getUpdates(), getDisposed(), persistedTargetData, persistedParameterData, messages.toArray(new String[0]), warnings.toArray(new String[0]));
@Test public void testExecuteOK() { final ExecuteServerActionResponse results = null; mockery.checking(new Expectations() { { one(mockEncoder).encodeServerActionResult(with(equalTo(adapter)), with(equalTo(new ObjectData[0])), with(equalTo(new ReferenceData[0])), with(nullValue(ObjectData.class)), with(equalTo(new ObjectData[0])), with(equalTo(new String[0])), with(equalTo(new String[0]))); will(returnValue(results)); } }); IsisContext.getTransactionManager().startTransaction(); final ExecuteServerActionRequest request = new ExecuteServerActionRequest(new TestProxySession(), ActionType.USER, "action()", targetData, parameterData); final ExecuteServerActionResponse result = server.executeServerAction(request); IsisContext.getTransactionManager().endTransaction(); assertEquals(results, result); }
@Test public void testExecuteWhereObjectChanged() { final ExecuteServerActionResponse results = null; mockery.checking(new Expectations() { { final ObjectData changedObjectData = new DummyObjectData(); one(mockEncoder).encodeForUpdate(adapter); will(returnValue(changedObjectData)); one(mockEncoder).encodeServerActionResult(with(equalTo(adapter)), with(equalTo(new ObjectData[] { changedObjectData })), with(equalTo(new ReferenceData[0])), with(nullValue(ObjectData.class)), with(equalTo(new ObjectData[0])), with(equalTo(new String[0])), with(equalTo(new String[0]))); will(returnValue(null)); } }); IsisContext.getTransactionManager().startTransaction(); IsisContext.getUpdateNotifier().addChangedObject(adapter); final ExecuteServerActionRequest request = new ExecuteServerActionRequest(new TestProxySession(), ActionType.USER, "action()", targetData, parameterData); final ExecuteServerActionResponse result = server.executeServerAction(request); IsisContext.getTransactionManager().endTransaction(); assertEquals(results, result); }
@Test public void testExecuteWhereMessagesAndWarningGenerated() { final ExecuteServerActionResponse results = null; mockery.checking(new Expectations() { { one(mockEncoder).encodeServerActionResult(with(equalTo(adapter)), with(equalTo(new ObjectData[0])), with(equalTo(new ReferenceData[0])), with(nullValue(ObjectData.class)), with(equalTo(new ObjectData[0])), with(equalTo(new String[] { "message 1", "message 2" })), with(equalTo(new String[] { "warning 1", "warning 2" }))); will(returnValue(null)); } }); IsisContext.getTransactionManager().startTransaction(); IsisContext.getMessageBroker().addMessage("message 1"); IsisContext.getMessageBroker().addMessage("message 2"); IsisContext.getMessageBroker().addWarning("warning 1"); IsisContext.getMessageBroker().addWarning("warning 2"); final ExecuteServerActionRequest request = new ExecuteServerActionRequest(new TestProxySession(), ActionType.USER, "action()", targetData, parameterData); final ExecuteServerActionResponse result = server.executeServerAction(request); IsisContext.getTransactionManager().endTransaction(); assertEquals(results, result); }
@Test public void testExecuteWhereObjectDeleted() { final ExecuteServerActionResponse results = null; mockery.checking(new Expectations() { { final ReferenceData deletedObjectIdentityData = new DummyReferenceData(adapter.getOid(), "", adapter.getVersion()); one(mockEncoder).encodeIdentityData(adapter); will(returnValue(deletedObjectIdentityData)); one(mockEncoder).encodeServerActionResult(with(equalTo(adapter)), with(equalTo(new ObjectData[0])), with(equalTo(new ReferenceData[] { deletedObjectIdentityData })), with(nullValue(ObjectData.class)), with(equalTo(new ObjectData[0])), with(equalTo(new String[0])), with(equalTo(new String[0]))); will(returnValue(null)); } }); IsisContext.getTransactionManager().startTransaction(); IsisContext.getUpdateNotifier().addDisposedObject(adapter); final ExecuteServerActionRequest request = new ExecuteServerActionRequest(new TestProxySession(), ActionType.USER, "action()", targetData, parameterData); final ExecuteServerActionResponse result = server.executeServerAction(request); IsisContext.getTransactionManager().endTransaction(); assertEquals(results, result); }