You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by mc...@apache.org on 2013/01/25 01:12:47 UTC

git commit: Fix StoragePool unit testcase.

Updated Branches:
  refs/heads/javelin f85ac6564 -> b6f780fa3


Fix StoragePool unit testcase.

Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/b6f780fa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/b6f780fa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/b6f780fa

Branch: refs/heads/javelin
Commit: b6f780fa3385f1b837dda4faadc1a45b619e9d86
Parents: f85ac65
Author: Min Chen <mi...@citrix.com>
Authored: Thu Jan 24 16:11:35 2013 -0800
Committer: Min Chen <mi...@citrix.com>
Committed: Thu Jan 24 16:11:35 2013 -0800

----------------------------------------------------------------------
 .../com/cloud/storage/dao/StoragePoolDaoTest.java  |   11 +++-
 .../dao/StoragePoolDaoTestConfiguration.java       |   52 +++++++++++++++
 server/test/resources/SnapshotDaoTestContext.xml   |    1 -
 .../test/resources/StoragePoolDaoTestContext.xml   |   42 ++++++++++++
 4 files changed, 103 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/b6f780fa/server/test/com/cloud/storage/dao/StoragePoolDaoTest.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/storage/dao/StoragePoolDaoTest.java b/server/test/com/cloud/storage/dao/StoragePoolDaoTest.java
index 87dbf16..e79f582 100644
--- a/server/test/com/cloud/storage/dao/StoragePoolDaoTest.java
+++ b/server/test/com/cloud/storage/dao/StoragePoolDaoTest.java
@@ -18,14 +18,21 @@ package com.cloud.storage.dao;
 
 import javax.inject.Inject;
 
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
 import junit.framework.TestCase;
 
 import com.cloud.storage.StoragePoolStatus;
 
-
+@RunWith(SpringJUnit4ClassRunner.class)
+@ContextConfiguration(locations = "classpath:/StoragePoolDaoTestContext.xml")
 public class StoragePoolDaoTest extends TestCase {
     @Inject StoragePoolDaoImpl dao;
-    
+
+    @Test
     public void testCountByStatus() {
         long count = dao.countPoolsByStatus(StoragePoolStatus.Up);
         System.out.println("Found " + count + " storage pools");

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/b6f780fa/server/test/com/cloud/storage/dao/StoragePoolDaoTestConfiguration.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/storage/dao/StoragePoolDaoTestConfiguration.java b/server/test/com/cloud/storage/dao/StoragePoolDaoTestConfiguration.java
new file mode 100644
index 0000000..60161dc
--- /dev/null
+++ b/server/test/com/cloud/storage/dao/StoragePoolDaoTestConfiguration.java
@@ -0,0 +1,52 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// the License.  You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+package com.cloud.storage.dao;
+
+import java.io.IOException;
+
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.ComponentScan.Filter;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.FilterType;
+import org.springframework.core.type.classreading.MetadataReader;
+import org.springframework.core.type.classreading.MetadataReaderFactory;
+import org.springframework.core.type.filter.TypeFilter;
+
+import com.cloud.utils.component.SpringComponentScanUtils;
+
+@Configuration
+@ComponentScan(basePackageClasses={
+        StoragePoolDaoImpl.class,
+        StoragePoolDetailsDaoImpl.class},
+        includeFilters={@Filter(value=StoragePoolDaoTestConfiguration.Library.class, type=FilterType.CUSTOM)},
+        useDefaultFilters=false
+        )
+public class StoragePoolDaoTestConfiguration {
+
+
+    public static class Library implements TypeFilter {
+
+        @Override
+        public boolean match(MetadataReader mdr, MetadataReaderFactory arg1) throws IOException {
+            mdr.getClassMetadata().getClassName();
+            ComponentScan cs = StoragePoolDaoTestConfiguration.class.getAnnotation(ComponentScan.class);
+            return SpringComponentScanUtils.includedInBasePackageClasses(mdr.getClassMetadata().getClassName(), cs);
+        }
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/b6f780fa/server/test/resources/SnapshotDaoTestContext.xml
----------------------------------------------------------------------
diff --git a/server/test/resources/SnapshotDaoTestContext.xml b/server/test/resources/SnapshotDaoTestContext.xml
index 7ee0cef..e479e2e 100644
--- a/server/test/resources/SnapshotDaoTestContext.xml
+++ b/server/test/resources/SnapshotDaoTestContext.xml
@@ -34,7 +34,6 @@
 
   <bean id="transactionContextBuilder" class="com.cloud.utils.db.TransactionContextBuilder" />
   <bean id="componentContext" class="com.cloud.utils.component.ComponentContext"/>
-  <!-- bean id="snapshotDaoImpl"  class="com.cloud.storage.dao.SnapshotDaoImpl"/-->
   <bean id="TestConfiguration" 
     class="com.cloud.snapshot.SnapshotDaoTestConfiguration" />
   <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" >

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/b6f780fa/server/test/resources/StoragePoolDaoTestContext.xml
----------------------------------------------------------------------
diff --git a/server/test/resources/StoragePoolDaoTestContext.xml b/server/test/resources/StoragePoolDaoTestContext.xml
new file mode 100644
index 0000000..4936a83
--- /dev/null
+++ b/server/test/resources/StoragePoolDaoTestContext.xml
@@ -0,0 +1,42 @@
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+  license agreements. See the NOTICE file distributed with this work for additional 
+  information regarding copyright ownership. The ASF licenses this file to 
+  you under the Apache License, Version 2.0 (the "License"); you may not use 
+  this file except in compliance with the License. You may obtain a copy of 
+  the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+  by applicable law or agreed to in writing, software distributed under the 
+  License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+  OF ANY KIND, either express or implied. See the License for the specific 
+  language governing permissions and limitations under the License. -->
+<beans xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
+  xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+                      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+                      http://www.springframework.org/schema/tx 
+                      http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
+                      http://www.springframework.org/schema/aop
+                      http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
+                      http://www.springframework.org/schema/context
+                      http://www.springframework.org/schema/context/spring-context-3.0.xsd">
+
+  <context:annotation-config />
+
+  <!-- @DB support -->
+  <aop:config proxy-target-class="true">
+    <aop:aspect id="dbContextBuilder" ref="transactionContextBuilder">
+      <aop:pointcut id="captureAnyMethod" expression="execution(* *(..))" />
+
+      <aop:around pointcut-ref="captureAnyMethod" method="AroundAnyMethod" />
+    </aop:aspect>
+
+  </aop:config>
+
+  <bean id="transactionContextBuilder" class="com.cloud.utils.db.TransactionContextBuilder" />
+  <bean id="componentContext" class="com.cloud.utils.component.ComponentContext"/>
+  <bean id="TestConfiguration" 
+    class="com.cloud.storage.dao.StoragePoolDaoTestConfiguration" />
+  <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" >
+    <property name="requiredParameterValue" value="false" />
+  </bean>
+</beans>