Yair Zaslavsky has uploaded a new change for review. Change subject: core: Fix unit bll unit test ......................................................................
core: Fix unit bll unit test An error was introduced due to usage of AsyncTaskDao.getAll in the CTOR of the AsyncTaskManager sinleton The following patch uses mocking to create mocked data source + mocked db facade to handle the error. Change-Id: If70f5da87e1238f0a545496d6e9700151275d642 Signed-off-by: Yair Zaslavsky <yzasl...@redhat.com> --- M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacadeLocator.java 2 files changed, 27 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/85/12385/1 diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java index 3cb24c6..d4aa88f 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java @@ -3,8 +3,14 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.when; import static org.ovirt.engine.core.utils.MockConfigRule.mockConfig; +import java.sql.Connection; +import java.util.Collections; + +import org.junit.BeforeClass; import org.junit.ClassRule; import org.junit.Rule; import org.junit.Test; @@ -32,11 +38,15 @@ import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.compat.Guid; +import org.ovirt.engine.core.dal.dbbroker.DbFacade; +import org.ovirt.engine.core.dal.dbbroker.DbFacadeLocator; +import org.ovirt.engine.core.dao.AsyncTaskDAO; import org.ovirt.engine.core.utils.MockConfigRule; import org.ovirt.engine.core.utils.MockEJBStrategyRule; import org.ovirt.engine.core.utils.RandomUtils; import org.ovirt.engine.core.utils.RandomUtilsSeedingRule; import org.ovirt.engine.core.utils.ejb.BeanType; +import org.ovirt.engine.core.utils.ejb.ContainerManagedResourceType; import org.ovirt.engine.core.utils.timer.SchedulerUtil; /** @@ -58,6 +68,16 @@ @ClassRule public static MockEJBStrategyRule ejbRule = new MockEJBStrategyRule(BeanType.SCHEDULER, mock(SchedulerUtil.class)); + + @BeforeClass + public static void beforeClass() { + ejbRule.mockResource(ContainerManagedResourceType.DATA_SOURCE, mock(Connection.class)); + DbFacade dbFacade = spy(new DbFacade()); + DbFacadeLocator.setDbFacade(dbFacade); + AsyncTaskDAO asyncTaskDao= mock(AsyncTaskDAO.class); + when(asyncTaskDao.getAll()).thenReturn(Collections.EMPTY_LIST); + when(dbFacade.getAsyncTaskDao()).thenReturn(asyncTaskDao); + } @SuppressWarnings({ "unchecked", "rawtypes", "serial" }) @DataPoints @@ -155,8 +175,8 @@ @Test(expected = UnsupportedOperationException.class) public void testExceptionForCommandWithNoTasks() { PermissionsOperationsParametes params = new PermissionsOperationsParametes(); - AddPermissionCommand<PermissionsOperationsParametes> cmd = - new AddPermissionCommand<PermissionsOperationsParametes>(params); + AddPermissionCommand<PermissionsOperationsParametes> cmd = spy( + new AddPermissionCommand<PermissionsOperationsParametes>(params)); cmd.concreteCreateTask(nextAsyncTaskCreationInfo(), VdcActionType.Unknown); } diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacadeLocator.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacadeLocator.java index 40244c8..7216c22 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacadeLocator.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacadeLocator.java @@ -8,12 +8,12 @@ import org.apache.commons.lang.exception.ExceptionUtils; import org.apache.commons.lang.math.NumberUtils; -import org.ovirt.engine.core.utils.log.Log; -import org.ovirt.engine.core.utils.log.LogFactory; import org.ovirt.engine.core.utils.FileUtil; import org.ovirt.engine.core.utils.ResourceUtils; import org.ovirt.engine.core.utils.ejb.ContainerManagedResourceType; import org.ovirt.engine.core.utils.ejb.EjbUtils; +import org.ovirt.engine.core.utils.log.Log; +import org.ovirt.engine.core.utils.log.LogFactory; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator; @@ -120,4 +120,7 @@ return numberStr != null && NumberUtils.isNumber(numberStr); } + public static void setDbFacade(DbFacade value) { + dbFacade = value; + } } -- To view, visit http://gerrit.ovirt.org/12385 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If70f5da87e1238f0a545496d6e9700151275d642 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <yzasl...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches