Tal Nisan has uploaded a new change for review. Change subject: core: Add storage pool validation to AddStorageDomainCommand ......................................................................
core: Add storage pool validation to AddStorageDomainCommand Change-Id: Ie7f16dfdb94e981747f58caafca132c341daba62 Bug-Url: https://bugzilla.redhat.com/1141784 Signed-off-by: Tal Nisan <tni...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommonTest.java 2 files changed, 16 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/80/33180/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java index ad12acb..1260dfa 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommand.java @@ -157,6 +157,10 @@ return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_TYPE_ILLEGAL); } + if (!Guid.isNullOrEmpty(getParameters().getStoragePoolId()) && getTargetStoragePool() == null) { + return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_POOL_NOT_EXIST); + } + ensureStorageFormatInitialized(); if (!isStorageFormatSupportedByStoragePool() || !isStorageFormatCompatibleWithDomain()) { addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_DOMAIN_FORMAT_ILLEGAL_HOST); diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommonTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommonTest.java index 0df200d..2e7d8f8 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommonTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/AddStorageDomainCommonTest.java @@ -64,6 +64,7 @@ private Guid spId; private StoragePool sp; private Guid connId; + private StorageDomainManagementParameter params; @Before public void setUp() { @@ -96,7 +97,7 @@ when(sscDao.get(connId.toString())).thenReturn(conn); - StorageDomainManagementParameter params = new StorageDomainManagementParameter(sd); + params = new StorageDomainManagementParameter(sd); params.setVdsId(vdsId); cmd = spy(new AddStorageDomainCommon<>(params)); @@ -158,13 +159,22 @@ } @Test - public void canDoActionSucceedsNoPool() { + public void canDoActionSucceedsPoolNotSpecified() { sd.setStorageFormat(null); vds.setStoragePoolId(null); CanDoActionTestUtils.runAndAssertCanDoActionSuccess(cmd); } @Test + public void canDoActionFailsPoolSpecifiedDoesNotExist() { + params.setStoragePoolId(spId); + when(spDao.get(spId)).thenReturn(null); + CanDoActionTestUtils.runAndAssertCanDoActionFailure + (cmd, VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_POOL_NOT_EXIST); + } + + + @Test public void canDoActionFailsBlockIso() { sd.setStorageDomainType(StorageDomainType.ISO); sd.setStorageType(StorageType.FCP); -- To view, visit http://gerrit.ovirt.org/33180 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie7f16dfdb94e981747f58caafca132c341daba62 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Tal Nisan <tni...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches