Coverage Report - org.kuali.student.common.test.spring.AbstractIntegrationServiceTest
 
Classes in this File Line Coverage Branch Coverage Complexity
AbstractIntegrationServiceTest
0%
0/1
N/A
0
 
 1  
 /**
 2  
  * Copyright 2010 The Kuali Foundation Licensed under the
 3  
  * Educational Community License, Version 2.0 (the "License"); you may
 4  
  * not use this file except in compliance with the License. You may
 5  
  * obtain a copy of the License at
 6  
  *
 7  
  * http://www.osedu.org/licenses/ECL-2.0
 8  
  *
 9  
  * Unless required by applicable law or agreed to in writing,
 10  
  * software distributed under the License is distributed on an "AS IS"
 11  
  * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 12  
  * or implied. See the License for the specific language governing
 13  
  * permissions and limitations under the License.
 14  
  */
 15  
 
 16  
 package org.kuali.student.common.test.spring;
 17  
 
 18  
 import org.junit.runner.RunWith;
 19  
 
 20  
 /**
 21  
  * This class will start a Jetty server and deploy an exploded war file 
 22  
  * defined in @IntegrationServer annotation. 
 23  
  * <p>
 24  
  * <b>&#064;IntegrationServer</b> annotation takes the following parameters:
 25  
  * </p>
 26  
  * <ul>
 27  
  *   <li><b>port</b> - Server port to deploy web application on e.g. 9090</li>
 28  
  *   <li><b>webAppPath</b> - Webapp path of exploded war file e.g. brms-ws-1.0.0.war</li>
 29  
  *   <li><b>contextPath</b> - Servlet context path e.g. brms-ws-1.0.0</li>
 30  
  * </ul>
 31  
  * <p>
 32  
  * The &#064;SystemProperties and &#064;Property annotation is used to set 
 33  
  * System properties before starting the Jetty server. For instance, if you 
 34  
  * want to set the catalina.base path or the URL or port of a service that is 
 35  
  * different from what is specified in the file CXF configuration in the war 
 36  
  * file.
 37  
  * </p>
 38  
  * <p>
 39  
  * <b>&#064;SystemProperties</b> takes the following parameter:
 40  
  * </p>
 41  
  * <ul>
 42  
  *   <li><b>properties</b> - List of <code>Property</code> to set</li>
 43  
  * </ul>
 44  
  * <p>
 45  
  * <b>&#064;Property</b> takes the following parameter:
 46  
  * </p>
 47  
  * <ul>
 48  
  *   <li><b>key</b> - Property key</li>
 49  
  *   <li><b>value</b> - Property value</li>
 50  
  * </ul>
 51  
  * <p>
 52  
  * <b>Example 1:</b> Setup an integration test on port 8080 which is the same 
 53  
  * port as specified in the application.properties file in the war file.
 54  
  * </p>
 55  
  * <pre>
 56  
  * &#064;IntegrationServer(
 57  
  *     port=8080, 
 58  
  *     webAppPath="../../../brms-ws/target/brms-ws-0.1.0-SNAPSHOT", 
 59  
  *     contextPath="/brms-ws-0.1.0-SNAPSHOT")
 60  
  * </pre>
 61  
  * 
 62  
  * <b>Example 2:</b> Setup an integration test on port 9090 which is different 
 63  
  * from what is specified in the application.properties file in the war file.
 64  
  * </p>
 65  
  * <pre>
 66  
  * &#064;IntegrationServer(
 67  
  *     port=9090, 
 68  
  *     webAppPath="../../../brms-ws/target/brms-ws-0.1.0-SNAPSHOT", 
 69  
  *     contextPath="/brms-ws-0.1.0-SNAPSHOT")
 70  
  *     
 71  
  * &#064;SystemProperties(properties={
 72  
  *     &#064;Property(
 73  
  *         key="ks.servicelocation.RuleManagementService", 
 74  
  *         value="http://localhost:9090/brms-ws-0.1.0-SNAPSHOT/services/RuleManagementService")
 75  
  *  })
 76  
  * </pre>
 77  
  * 
 78  
  * <b>Example 3:</b> Integration test.
 79  
  * <pre>
 80  
  * <b>package</b> org.kuali.student.rules.integration;
 81  
  * // The following system properties are only needed if you want to specify a
 82  
  * // server port (port 9000) other than 8080 as defined in
 83  
  * // brms-ws/src/main/resources/application.properties, 
 84  
  * // application-ruleexecution.properties and application-rulerepository.properties
 85  
  * <b>&#064;IntegrationServer</b>(port=9000, webappPath="../../../brms-ws/target/brms-ws-0.1.0-SNAPSHOT", contextPath="/brms-ws-0.1.0-SNAPSHOT")
 86  
  * <b>&#064;SystemProperties</b>(properties={
 87  
  *     <b>&#064;Property</b>(key="ks.servicelocation.RuleManagementService", value="http://localhost:9000/brms-ws-0.1.0-SNAPSHOT/services/RuleManagementService"),
 88  
  * })
 89  
  * <b>public class</b> IntegrationTest <b>extends</b> AbstractIntegrationServiceTest {
 90  
  *     private final static String HOST = "http://localhost:9000/brms-ws-0.1.0-SNAPSHOT";
 91  
  * 
 92  
  *     private static String ruleManagementServiceURL = HOST+"/services/RuleManagementService";
 93  
  *     private static String ruleManagementNamespace = "http://student.kuali.org/wsdl/brms/RuleManagement";
 94  
  *     private static String ruleManagementServiceName = "RuleManagementService";
 95  
  *     private static String ruleManagementServiceInterface = RuleManagementService.class.getName();
 96  
  * 
 97  
  *     private static RuleManagementService ruleManagementService;
 98  
  * 
 99  
  *     <b>&#064;BeforeClass</b>
 100  
  *     public static void setUpOnce() throws Exception {
 101  
  *         ruleManagementService = (RuleManagementService) ServiceFactory.getPort(
 102  
  *             ruleManagementServiceURL + "?wsdl", 
 103  
  *             ruleManagementNamespace, 
 104  
  *             ruleManagementServiceName, 
 105  
  *             ruleManagementServiceInterface, 
 106  
  *             ruleManagementServiceURL);
 107  
  *
 108  
  *     }
 109  
  *         
 110  
  *     <b>&#064;AfterClass</b>
 111  
  *     public static void tearDownOnce() throws Exception { }
 112  
  *
 113  
  *     <b>&#064;Before</b>
 114  
  *     public void setUp() throws Exception { }
 115  
  *         
 116  
  *     <b>&#064;After</b>
 117  
  *     public void tearDown() throws Exception { }
 118  
  *     
 119  
  *     <b>&#064;Test</b>
 120  
  *     public void testFindBusinessRuleTypesFromTestBeans() throws Exception {
 121  
  *         List<String> businessRuleIdList1 = ruleManagementService.findBusinessRuleIdsByBusinessRuleType("KUALI_PRE_REQ");
 122  
  *         Assert.assertNotNull(businessRuleIdList1);
 123  
  *         List<String> businessRuleIdList2 = ruleManagementService.findBusinessRuleIdsByBusinessRuleType("KUALI_CO_REQ");
 124  
  *         Assert.assertNotNull(businessRuleIdList2);
 125  
  *     }
 126  
  * }
 127  
  * </pre>
 128  
  */
 129  
 @RunWith(IntegrationServiceTestClassRunner.class)
 130  0
 public abstract class AbstractIntegrationServiceTest {
 131  
 
 132  
 }