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

Reply via email to