Ravi Nori has uploaded a new change for review. Change subject: engine : Add serialization test for StopVmCommand ......................................................................
engine : Add serialization test for StopVmCommand Added serialization deserilaization test for VmOperationParameterBase which adds two parameters to the VdcParametersMap and verifies that the values are retained on serializing the object to JSON and deserializing JSON to Object. Change-Id: I9f3df6b3b5981f3a6cb4de785f6c567be63e3cb2 Signed-off-by: Ravi Nori <rn...@redhat.com> --- A backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializationParametersTest.java 1 file changed, 56 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/80/20480/1 diff --git a/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializationParametersTest.java b/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializationParametersTest.java new file mode 100644 index 0000000..611d2a2 --- /dev/null +++ b/backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializationParametersTest.java @@ -0,0 +1,56 @@ +package org.ovirt.engine.core.utils.serialization.json; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.io.Serializable; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.ovirt.engine.core.common.action.StopVmTypeEnum; +import org.ovirt.engine.core.common.action.VmOperationParameterBase; +import org.ovirt.engine.core.common.queries.InvalidParameterValueException; +import org.ovirt.engine.core.common.utils.VmVdcParameter; +import org.ovirt.engine.core.compat.Guid; + + +/** + * This test is designed to test that the parameter classes can be serialized/deserialized by Jackson correctly. + */ +public class JsonObjectSerializationParametersTest { + + @Test + public void serializeAndDeserializeEntity() throws Exception { + Guid vmId = new Guid("00000000-0000-0000-0000-000000000000"); + StopVmTypeEnum stopVmType = StopVmTypeEnum.CANNOT_SHUTDOWN; + VmOperationParameterBase parameter = getStopVmParameters(vmId, stopVmType); + String serializedEntity = new JsonObjectSerializer().serialize(parameter); + assertNotNull(serializedEntity); + + Serializable deserializedEntity = + new JsonObjectDeserializer().deserialize(serializedEntity, parameter.getClass()); + assertNotNull(deserializedEntity); + + VmOperationParameterBase deserializedParameter = (VmOperationParameterBase) deserializedEntity; + Guid deserializedVmId = (Guid) deserializedParameter.getParameterValue(VmVdcParameter.VmId); + StopVmTypeEnum deSerializedStopVmType = (StopVmTypeEnum) deserializedParameter.getParameterValue(VmVdcParameter.StopVmType); + + assertNotNull(deserializedVmId); + assertNotNull(deSerializedStopVmType); + + assertEquals(vmId, deserializedVmId); + assertEquals(stopVmType, deSerializedStopVmType); + assertEquals(parameter, deserializedParameter); + } + + private VmOperationParameterBase getStopVmParameters(Guid vmId, StopVmTypeEnum stopVmType) { + VmOperationParameterBase params = new VmOperationParameterBase(vmId); + try { + params.addParameter(VmVdcParameter.VmId, vmId); + params.addParameter(VmVdcParameter.StopVmType, stopVmType); + } catch (InvalidParameterValueException e) { + fail(e.getMessage()); + } + return params; + } +} -- To view, visit http://gerrit.ovirt.org/20480 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9f3df6b3b5981f3a6cb4de785f6c567be63e3cb2 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches