Arik Hadas has uploaded a new change for review. Change subject: core: test negative flows for pattern-based name ......................................................................
core: test negative flows for pattern-based name Validate pattern-based names are not supported for VMs and Templates. In addition, additional test was added to AddVmPoolWithVmsCommandTest to validate that the validations pass when the pool's name is not pattern-based as well. Change-Id: I893a117a8eaa6abcb9d15abf599eb31426baab35 Bug-Url: https://bugzilla.redhat.com/1078875 Signed-off-by: Arik Hadas <aha...@redhat.com> --- M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmPoolWithVmsCommandTest.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmTemplateCommandTest.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java 4 files changed, 49 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/25/26625/1 diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java index 9b95202..08fc849 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmCommandTest.java @@ -523,6 +523,7 @@ mcr.mockConfigValue(ConfigValues.UserDefinedVMProperties, Version.v3_0, ""); mcr.mockConfigValue(ConfigValues.InitStorageSparseSizeInGB, 1); mcr.mockConfigValue(ConfigValues.VirtIoScsiEnabled, Version.v3_3, true); + mcr.mockConfigValue(ConfigValues.ValidNumOfMonitors, Arrays.asList("1,2,4".split(","))); } private void mockConfigSizeRequirements(int requiredSpaceBufferInGB) { @@ -588,4 +589,16 @@ doReturn(false).when(spy).isVirtioScsiControllerAttached(any(Guid.class)); spy.setVmTemplateId(Guid.newGuid()); } + + @Test + public void testBeanValidations() { + assertTrue(createCommand(initializeMock(1, 1)).validateInputs()); + } + + @Test + public void testPatternBasedNameFails() { + AddVmCommand<VmManagementParametersBase> cmd = createCommand(initializeMock(1, 1)); + cmd.getParameters().getVm().setName("aa-??bb"); + assertFalse("Pattern-based name should not be supported for VM", cmd.validateInputs()); + } } diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmPoolWithVmsCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmPoolWithVmsCommandTest.java index 624ba85..e42e402 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmPoolWithVmsCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmPoolWithVmsCommandTest.java @@ -60,4 +60,9 @@ command.getParameters().getVmPool().setName(patternBaseName); assertTrue(command.validateInputs()); } + + @Test + public void validateBeanValidations() { + assertTrue(command.validateInputs()); + } } diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmTemplateCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmTemplateCommandTest.java index 4f46d2f..76aefb6 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmTemplateCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVmTemplateCommandTest.java @@ -1,5 +1,7 @@ package org.ovirt.engine.core.bll; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; @@ -104,4 +106,15 @@ CanDoActionTestUtils.runAndAssertCanDoActionFailure(cmd, VdcBllMessages.VMT_CANNOT_CREATE_TEMPLATE_FROM_DOWN_VM); } + + @Test + public void testBeanValidations() { + assertTrue(cmd.validateInputs()); + } + + @Test + public void testPatternBasedNameFails() { + cmd.getParameters().setName("aa-??bb"); + assertFalse("Pattern-based name should not be supported for Template", cmd.validateInputs()); + } } diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java index 5da8d7a..6132ea1 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVmCommandTest.java @@ -25,10 +25,10 @@ import org.mockito.runners.MockitoJUnitRunner; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VmManagementParametersBase; +import org.ovirt.engine.core.common.businessentities.ArchitectureType; import org.ovirt.engine.core.common.businessentities.Disk; import org.ovirt.engine.core.common.businessentities.DiskImage; import org.ovirt.engine.core.common.businessentities.DiskInterface; -import org.ovirt.engine.core.common.businessentities.ArchitectureType; import org.ovirt.engine.core.common.businessentities.DisplayType; import org.ovirt.engine.core.common.businessentities.QuotaEnforcementTypeEnum; import org.ovirt.engine.core.common.businessentities.VDS; @@ -61,6 +61,8 @@ private UpdateVmCommand<VmManagementParametersBase> command; private VDSGroup group; + private static String vncKeyboardLayoutValues = + "ar,da,de,de-ch,en-gb,en-us,es,et,fi,fo,fr,fr-be,fr-ca,fr-ch,hr,hu,is,it,ja,lt,lv,mk,nl,nl-be,no,pl,pt,pt-br,ru,sl,sv,th,tr"; @Mock private VmDAO vmDAO; @Mock @@ -85,7 +87,6 @@ mockConfig(ConfigValues.UserDefinedVMProperties, "3.1", ""), mockConfig(ConfigValues.PredefinedVMProperties, "3.0", ""), mockConfig(ConfigValues.UserDefinedVMProperties, "3.0", ""), - mockConfig(ConfigValues.ValidNumOfMonitors, "1,2,4"), mockConfig(ConfigValues.VmPriorityMaxValue, 100), mockConfig(ConfigValues.MaxNumOfVmCpus, "3.0", 16), mockConfig(ConfigValues.MaxNumOfVmSockets, "3.0", 16), @@ -93,7 +94,9 @@ mockConfig(ConfigValues.MaxNumOfVmCpus, "3.3", 16), mockConfig(ConfigValues.MaxNumOfVmSockets, "3.3", 16), mockConfig(ConfigValues.MaxNumOfCpuPerSocket, "3.3", 16), - mockConfig(ConfigValues.VirtIoScsiEnabled, Version.v3_3.toString(), true) + mockConfig(ConfigValues.VirtIoScsiEnabled, Version.v3_3.toString(), true), + mockConfig(ConfigValues.VncKeyboardLayoutValidValues, Arrays.asList(vncKeyboardLayoutValues.split(","))), + mockConfig(ConfigValues.ValidNumOfMonitors, Arrays.asList("1,2,4".split(","))) ); @Before @@ -127,6 +130,7 @@ vm.setVdsGroupId(group.getId()); vm.setClusterArch(ArchitectureType.x86_64); vmStatic.setVdsGroupId(group.getId()); + vmStatic.setName("my_vm"); VmManagementParametersBase params = new VmManagementParametersBase(); params.setCommandType(VdcActionType.UpdateVm); @@ -144,6 +148,17 @@ } @Test + public void testBeanValidations() { + assertTrue(command.validateInputs()); + } + + @Test + public void testPatternBasedNameFails() { + vmStatic.setName("aa-??bb"); + assertFalse("Pattern-based name should not be supported for VM", command.validateInputs()); + } + + @Test public void testLongName() { vmStatic.setName("this_should_be_very_long_vm_name_so_it will_fail_can_do_action_validation"); assertFalse("canDoAction should fail for too long vm name.", command.canDoAction()); -- To view, visit http://gerrit.ovirt.org/26625 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I893a117a8eaa6abcb9d15abf599eb31426baab35 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.4 Gerrit-Owner: Arik Hadas <aha...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches