Repository: olingo-odata4
Updated Branches:
  refs/heads/master ca4449f2b -> 0be567b9c


Minor changes for faster (default) FIT execution


Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/0be567b9
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/0be567b9
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/0be567b9

Branch: refs/heads/master
Commit: 0be567b9cd60c826ac42e66c34a2c955e6dd3488
Parents: ca4449f
Author: mibo <[email protected]>
Authored: Tue Oct 14 14:46:10 2014 +0200
Committer: mibo <[email protected]>
Committed: Tue Oct 14 14:46:10 2014 +0200

----------------------------------------------------------------------
 .../olingo/fit/server/TomcatTestServer.java     | 60 ++++++++++++--------
 fit/src/main/resources/log4j.xml                |  2 +-
 .../olingo/fit/AbstractBaseTestITCase.java      | 26 +++++----
 3 files changed, 52 insertions(+), 36 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/0be567b9/fit/src/main/java/org/apache/olingo/fit/server/TomcatTestServer.java
----------------------------------------------------------------------
diff --git 
a/fit/src/main/java/org/apache/olingo/fit/server/TomcatTestServer.java 
b/fit/src/main/java/org/apache/olingo/fit/server/TomcatTestServer.java
index 231d9c0..be94e8e 100644
--- a/fit/src/main/java/org/apache/olingo/fit/server/TomcatTestServer.java
+++ b/fit/src/main/java/org/apache/olingo/fit/server/TomcatTestServer.java
@@ -55,19 +55,6 @@ public class TomcatTestServer {
 
   private TomcatTestServer(Tomcat tomcat) {
     this.tomcat = tomcat;
-    enableLogging();
-  }
-
-  private void enableLogging() {
-    java.util.logging.Logger logger = java.util.logging.Logger.getLogger("");
-    try {
-      Handler fileHandler = new FileHandler(tomcat.getHost().getAppBase() + 
"/catalina.out", true);
-      fileHandler.setFormatter(new SimpleFormatter());
-      fileHandler.setLevel(Level.ALL);
-      logger.addHandler(fileHandler);
-    } catch (IOException e) {
-      throw new RuntimeException("Unable to configure embedded tomcat 
logging.");
-    }
   }
 
   public static void main(String[] params) {
@@ -179,9 +166,10 @@ public class TomcatTestServer {
       tomcat = new Tomcat();
       tomcat.setBaseDir(baseDir.getParentFile().getAbsolutePath());
       tomcat.setPort(fixedPort);
-      tomcat.getHost().setAutoDeploy(true);
       tomcat.getHost().setAppBase(baseDir.getAbsolutePath());
       tomcat.getHost().setDeployOnStartup(true);
+      tomcat.getConnector().setSecure(false);
+      tomcat.setSilent(true);
       tomcat.addUser("odatajclient", "odatajclient");
       tomcat.addRole("odatajclient", "odatajclient");
     }
@@ -198,22 +186,43 @@ public class TomcatTestServer {
       }
     }
 
+    public void enableLogging(Level level) {
+      tomcat.setSilent(false);
+      try {
+        Handler fileHandler = new FileHandler(tomcat.getHost().getAppBase() + 
"/catalina.out", true);
+        fileHandler.setFormatter(new SimpleFormatter());
+        fileHandler.setLevel(level);
+        java.util.logging.Logger.getLogger("").addHandler(fileHandler);
+      } catch (IOException e) {
+        throw new RuntimeException("Unable to configure embedded tomcat 
logging.");
+      }
+    }
+
     public void atPort(int port) {
       tomcat.setPort(port);
     }
 
     public TestServerBuilder addWebApp() throws IOException {
+      return addWebApp(true);
+    }
+
+    public TestServerBuilder addWebApp(boolean copy) throws IOException {
       if (server != null) {
         return this;
       }
 
       File webAppProjectDir = getFileForDirProperty(PROJECT_WEB_APP_DIR);
-      File webAppDir = new File(baseDir, webAppProjectDir.getName());
-      FileUtils.deleteDirectory(webAppDir);
-      if (!webAppDir.mkdirs()) {
-        throw new RuntimeException("Unable to create temporary directory at {" 
+ webAppDir.getAbsolutePath() + "}");
+      final File webAppDir;
+      if(copy) {
+        webAppDir = new File(baseDir, webAppProjectDir.getName());
+        FileUtils.deleteDirectory(webAppDir);
+        if (!webAppDir.mkdirs()) {
+          throw new RuntimeException("Unable to create temporary directory at 
{" + webAppDir.getAbsolutePath() + "}");
+        }
+        FileUtils.copyDirectory(webAppProjectDir, webAppDir);
+      } else {
+        webAppDir = webAppProjectDir;
       }
-      FileUtils.copyDirectory(webAppProjectDir, webAppDir);
 
       String contextPath = "/stub";
       Context context = tomcat.addWebapp(tomcat.getHost(), contextPath, 
webAppDir.getAbsolutePath());
@@ -244,14 +253,14 @@ public class TomcatTestServer {
       if (server != null) {
         return this;
       }
-      String odataServlet = factoryClass.getName();
-      HttpServlet httpServlet = (HttpServlet) 
Class.forName(odataServlet).newInstance();
+      String servletClassname = factoryClass.getName();
+      HttpServlet httpServlet = (HttpServlet) 
Class.forName(servletClassname).newInstance();
       Context cxt = getContext();
       String randomServletId = UUID.randomUUID().toString();
       Tomcat.addServlet(cxt, randomServletId, httpServlet);
       cxt.addServletMapping(path, randomServletId);
       //
-      LOG.info("Added servlet {} at context {} (mapping id={}).", 
odataServlet, path, randomServletId);
+      LOG.info("Added servlet {} at context {} (mapping id={}).", 
servletClassname, path, randomServletId);
       return this;
     }
 
@@ -263,6 +272,11 @@ public class TomcatTestServer {
       return addServlet(staticContent, String.valueOf(uri.hashCode()), uri);
     }
 
+    public TestServerBuilder addServlet(HttpServlet httpServlet, String path) 
throws IOException {
+      String name = UUID.randomUUID().toString();
+      return addServlet(httpServlet, name, path);
+    }
+
     public TestServerBuilder addServlet(HttpServlet httpServlet, String name, 
String path) throws IOException {
       if (server != null) {
         return this;
@@ -313,4 +327,4 @@ public class TomcatTestServer {
       tomcat.destroy();
     }
   }
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/0be567b9/fit/src/main/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/fit/src/main/resources/log4j.xml b/fit/src/main/resources/log4j.xml
index 5af23dd..edb5223 100644
--- a/fit/src/main/resources/log4j.xml
+++ b/fit/src/main/resources/log4j.xml
@@ -46,7 +46,7 @@ under the License.
   </logger>
 
   <root>
-    <level value="DEBUG"/>
+    <level value="INFO"/>
     <appender-ref ref="fitlog"/>
   </root>
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/0be567b9/fit/src/test/java/org/apache/olingo/fit/AbstractBaseTestITCase.java
----------------------------------------------------------------------
diff --git 
a/fit/src/test/java/org/apache/olingo/fit/AbstractBaseTestITCase.java 
b/fit/src/test/java/org/apache/olingo/fit/AbstractBaseTestITCase.java
index a300518..bda92d4 100644
--- a/fit/src/test/java/org/apache/olingo/fit/AbstractBaseTestITCase.java
+++ b/fit/src/test/java/org/apache/olingo/fit/AbstractBaseTestITCase.java
@@ -57,9 +57,10 @@ public abstract class AbstractBaseTestITCase {
       throws LifecycleException, IOException, InstantiationException, 
IllegalAccessException, ClassNotFoundException {
     TomcatTestServer.init(9080)
         .addServlet(TechnicalServlet.class, "/odata-server-tecsvc/odata.svc/*")
-        .addServlet(StaticContent.class, 
"/odata-server-tecsvc/v4.0/cs02/vocabularies/Org.OData.Core.V1.xml")
-        .addServlet(MetadataContent.class, "/odata-metadata/$metadata")
-        .addWebApp()
+        .addServlet(StaticContent.create("org-odata-core-v1.xml"),
+            
"/odata-server-tecsvc/v4.0/cs02/vocabularies/Org.OData.Core.V1.xml")
+        .addServlet(StaticContent.create("metadata-ref.xml"), 
"/odata-metadata/$metadata")
+        .addWebApp(false)
         .start();
   }
 
@@ -130,19 +131,20 @@ public abstract class AbstractBaseTestITCase {
 
   public static class StaticContent extends HttpServlet {
     private static final long serialVersionUID = -6663569573355398997L;
-    @Override
-    protected void doGet(HttpServletRequest req, HttpServletResponse resp) 
throws ServletException, IOException {
-      resp.getOutputStream().write(IOUtils.toByteArray(
-          
Thread.currentThread().getContextClassLoader().getResourceAsStream("org-odata-core-v1.xml")));
+    private final String resourceName;
+
+    public StaticContent(String resourceName) {
+      this.resourceName = resourceName;
+    }
+
+    public static HttpServlet create(String resourceName) {
+      return new StaticContent(resourceName);
     }
-  }
 
-  public static class MetadataContent extends HttpServlet {
-    private static final long serialVersionUID = -6663569573355398997L;
     @Override
     protected void doGet(HttpServletRequest req, HttpServletResponse resp) 
throws ServletException, IOException {
       resp.getOutputStream().write(IOUtils.toByteArray(
-          
Thread.currentThread().getContextClassLoader().getResourceAsStream("metadata-ref.xml")));
+          
Thread.currentThread().getContextClassLoader().getResourceAsStream(resourceName)));
     }
   }
-}
+}
\ No newline at end of file

Reply via email to