diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/pom.xml b/pom.xml index 7e0451e..68eff41 100644 --- a/pom.xml +++ b/pom.xml @@ -1,231 +1,74 @@ - - 4.0.0 - com.salesforce - QualityFoundry - 0.0.1-SNAPSHOT - jar - A test runner for the Salesforce platform. - - http://salesforce.com - - scm:git:git@github.com:forcedotcom/QualityFoundry.git - scm:git:git@github.com:forcedotcom/QualityFoundry.git - http://github.com/forcedotcom/TempStore - - - - gwester - Greg Wester - gwester@salesforce.com - - - bbirman - Brianna Birman - bbirman@contractor.salesforce.com - - - - - 2.2.1 - - - UTF-8 - - - - - - BSD, Version 3.0 - http://www.opensource.org/licenses/BSD-3-Clause - repo - - - - salesforce.com - http://salesforce.com - - - - - - - com.yammer.dropwizard - dropwizard-core - 0.4.0 - - - com.yammer.dropwizard - dropwizard-views - 0.4.0 - - - - - com.basho.riak - riak-client - 1.0.5 - - - - com.ning - compress-lzf - 0.9.4 - - - - joda-time - joda-time - 2.1 - - - - com.fasterxml.jackson.core - jackson-annotations - 2.0.2 - - - com.fasterxml.jackson.core - jackson-core - 2.0.2 - - - com.fasterxml.jackson.core - jackson-databind - 2.0.2 - - - com.fasterxml.jackson.dataformat - jackson-dataformat-smile - 2.0.2 - - - - com.ning - async-http-client - 1.7.5 - - - - org.apache.httpcomponents - httpclient - 4.2 - - - - junit - junit - 4.8.2 - - - - - - - - org.apache.maven.plugins - maven-shade-plugin - 1.4 - - true - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - - package - - shade - - - - - - com.qualityfoundry.WebApp - - - - - - - - - - maven-compiler-plugin - 2.3.2 - - 1.6 - 1.6 - - - - org.apache.maven.plugins - maven-release-plugin - 2.1 - - forked-path - - - - org.apache.maven.plugins - maven-source-plugin - 2.1.2 - - - attach-sources - - jar - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.6.1 - - 1.5 - 1.5 - UTF-8 - 512m - - http://docs.oracle.com/javase/6/docs/api/ - - - + + 4.0.0 + com.force.taas + qf + jar + 0.0.1-SNAPSHOT + qf + + + com.sun.jersey + jersey-grizzly2 + ${jersey-version} + + + com.sun.jersey + jersey-json + ${jersey-version} + + + com.sun.jersey.contribs + jersey-multipart + ${jersey-version} + + + junit + junit + 4.10 + test + + + com.sun.jersey + jersey-client + ${jersey-version} + test + + + com.basho.riak + riak-client + 1.0.5 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + true + + 1.6 + 1.6 + + + + org.codehaus.mojo + exec-maven-plugin + 1.1 + - attach-javadocs - verify - jar + java - - - - - - - - oracleReleases - Oracle Released Java Packages - http://download.oracle.com/maven - default - - - project.local - local - legacy - file:${project.basedir}/lib - - - \ No newline at end of file + + + com.force.taas.qf.WebServer + + + + + + 1.13 + + diff --git a/src/main/java/com/force/taas/qf/PersistenceService.java b/src/main/java/com/force/taas/qf/PersistenceService.java new file mode 100644 index 0000000..1dfbbc6 --- /dev/null +++ b/src/main/java/com/force/taas/qf/PersistenceService.java @@ -0,0 +1,33 @@ +// Copyright (c) 2012 Gregory D. Wester +// +// Licensed 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. +package com.force.taas.qf; + +import com.basho.riak.client.RiakException; +import com.basho.riak.client.RiakFactory; +import com.basho.riak.client.bucket.Bucket; +import com.basho.riak.client.bucket.FetchBucket; + +/** + * + * @author gwester + * + */ +public class PersistenceService { + + protected static final String BUCKET_NAME = "prodtest"; + + public static Bucket getBucket() throws RiakException { + return RiakFactory.httpClient().fetchBucket(BUCKET_NAME).execute(); + } +} diff --git a/src/main/java/com/force/taas/qf/WebServer.java b/src/main/java/com/force/taas/qf/WebServer.java new file mode 100644 index 0000000..dafea9b --- /dev/null +++ b/src/main/java/com/force/taas/qf/WebServer.java @@ -0,0 +1,64 @@ +// Copyright (c) 2012 Gregory D. Wester +// +// Licensed 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. +package com.force.taas.qf; + +import com.sun.jersey.api.container.grizzly2.GrizzlyServerFactory; +import com.sun.jersey.api.core.PackagesResourceConfig; +import com.sun.jersey.api.core.ResourceConfig; +import org.glassfish.grizzly.http.server.HttpServer; + +import javax.ws.rs.core.UriBuilder; +import java.io.IOException; +import java.net.URI; + +/** + * + * @author gwester + * + */ +public class WebServer { + + private static int getPort(int defaultPort) { + //grab port from environment, otherwise fall back to default port 9998 + String httpPort = System.getProperty("jersey.test.port"); + if (null != httpPort) { + try { + return Integer.parseInt(httpPort); + } catch (NumberFormatException e) { + } + } + return defaultPort; + } + + private static URI getBaseURI() { + return UriBuilder.fromUri("http://localhost/").port(getPort(9998)).build(); + } + + public static final URI BASE_URI = getBaseURI(); + + protected static HttpServer startServer() throws IOException { + ResourceConfig resourceConfig = new PackagesResourceConfig("com.force.taas.qf.resource"); + + System.out.println("Starting grizzly2..."); + return GrizzlyServerFactory.createHttpServer(BASE_URI, resourceConfig); + } + + public static void main(String[] args) throws IOException { + // Grizzly 2 initialization + HttpServer httpServer = startServer(); + + System.in.read(); + httpServer.stop(); + } +} diff --git a/src/main/java/com/force/taas/qf/resource/TestResource.java b/src/main/java/com/force/taas/qf/resource/TestResource.java new file mode 100644 index 0000000..259281c --- /dev/null +++ b/src/main/java/com/force/taas/qf/resource/TestResource.java @@ -0,0 +1,36 @@ +// Copyright (c) 2012 Gregory D. Wester +// +// Licensed 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. +package com.force.taas.qf.resource; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; + +import com.basho.riak.client.RiakFactory; +import com.force.taas.qf.PersistenceService; + +/** + * + * @author gwester + * + */ +@Path("/tests") +public class TestResource { + + @GET + @Produces("text/plain") + public String getIt() throws Exception { + return PersistenceService.getBucket().getName(); + } +} diff --git a/src/main/resources/web/build-output.html b/src/main/resources/web/build-output.html new file mode 100644 index 0000000..7eb047c --- /dev/null +++ b/src/main/resources/web/build-output.html @@ -0,0 +1,211 @@ + + + + + Build Output + + + + + + + + + + + + + + + + + +
+ + + + +
+ +
+ +
+ +
+ + +

Test Inventory

+
+ + + +

Run 2

+
+   Start Time 10:30 21-03-2012
+   End Time 20:30 21-03-2012
+
+    Build Output
+    6 Test Results
+    6 Code Coverage
+
+

Run 3 loading icon

+
+   Start Time 10:30 21-03-2012
+   Generating Results...
+ +
+

Run 4

+
+   Start Time 10:30 21-03-2012
+   End Time 20:30 21-03-2012
+ +    Build Output
+    Test Results 6
+    Code Coverage 91%
+
+

Run 5

+
+   Start 10:30 21-03-2012
+   End 20:30 21-03-2012
+ +   Build Output
+   Test Results 6
+   Code Coverage 91%
+
+

Run 6

+
+   Start Time 10:30 21-03-2012
+   End Time 20:30 21-03-2012
+ +    Build Output
+    Test Results 6
+    Code Coverage 91%
+
+

Run 7

+
+   Start Time 10:30 21-03-2012
+   End Time 20:30 21-03-2012
+ +    Build Output
+    Test Results 6
+    Code Coverage 91%
+
+ +
+
+ +
+ + + + + + +
+
+ ${run.output} + 9) - Deleting record id:001D000000JJDF7IAP 2011-07-15 14:00:33,719 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDF8IAP 2011-07-15 14:00:33,719 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDF9IAP 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFAIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFBIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFCIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFDIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFEIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFFIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFGIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFHIA5 2011-07-15 14:00:33,720 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFIIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFJIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFKIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFLIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFMIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFNIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFOIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFPIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFQIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFRIA5 2011-07-15 14:00:33,721 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFSIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFTIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFUIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFVIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFWIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFXIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFYIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFZIA5 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFaIAP 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFbIAP 2011-07-15 14:00:33,722 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFcIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFdIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFeIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFfIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFgIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFhIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFiIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFjIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFkIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFlIAP 2011-07-15 14:00:33,723 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFmIAP 2011-07-15 14:00:33,724 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFnIAP 2011-07-15 14:00:33,724 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFoIAP 2011-07-15 14:00:33,724 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFpIAP 2011-07-15 14:00:34,385 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFqIAP 2011-07-15 14:00:34,385 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFrIAP 2011-07-15 14:00:34,385 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFsIAP 2011-07-15 14:00:34,385 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFtIAP 2011-07-15 14:00:34,386 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFuIAP 2011-07-15 14:00:34,386 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFvIAP 2011-07-15 14:00:34,386 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFwIAP 2011-07-15 14:00:34,386 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFxIAP 2011-07-15 14:00:34,386 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFyIAP 2011-07-15 14:00:34,387 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDFzIAP 2011-07-15 14:00:34,387 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDG0IAP 2011-07-15 14:00:34,387 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDG1IAP 2011-07-15 14:00:34,387 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMUIA5 2011-07-15 14:00:34,387 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMVIA5 2011-07-15 14:00:34,388 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMWIA5 2011-07-15 14:00:34,388 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMXIA5 2011-07-15 14:00:34,388 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMYIA5 2011-07-15 14:00:34,388 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMZIA5 2011-07-15 14:00:34,388 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMaIAP 2011-07-15 14:00:34,389 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMbIAP 2011-07-15 14:00:34,389 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMcIAP 2011-07-15 14:00:34,389 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMdIAP 2011-07-15 14:00:34,389 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMeIAP 2011-07-15 14:00:34,389 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMfIAP 2011-07-15 14:00:34,390 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMgIAP 2011-07-15 14:00:34,390 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMhIAP 2011-07-15 14:00:34,390 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMiIAP 2011-07-15 14:00:34,390 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMjIAP 2011-07-15 14:00:34,390 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMkIAP 2011-07-15 14:00:34,391 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMlIAP 2011-07-15 14:00:34,391 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMmIAP 2011-07-15 14:00:34,391 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMnIAP 2011-07-15 14:00:34,391 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMoIAP 2011-07-15 14:00:34,392 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMpIAP 2011-07-15 14:00:34,392 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMqIAP 2011-07-15 14:00:34,392 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMrIAP 2011-07-15 14:00:34,392 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMsIAP 2011-07-15 14:00:34,392 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDMtIAP 2011-07-15 14:00:34,393 DEBUG [testMaximumBatchRowsDb] [testMaximumBatchRowsDb] [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN0IAP 2011-07-15 14:00:34,394 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN1IAP 2011-07-15 14:00:34,394 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN2IAP 2011-07-15 14:00:34,394 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDOAIA5 2011-07-15 14:00:34,395 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN3IAP 2011-07-15 14:00:34,395 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN4IAP 2011-07-15 14:00:34,395 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN5IAP 2011-07-15 14:00:34,395 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN6IAP 2011-07-15 14:00:34,395 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN7IAP 2011-07-15 14:00:34,396 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN8IAP 2011-07-15 14:00:34,396 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDN9IAP 2011-07-15 14:00:34,396 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNAIA5 2011-07-15 14:00:34,396 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNBIA5 2011-07-15 14:00:34,396 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNCIA5 2011-07-15 14:00:34,397 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNDIA5 2011-07-15 14:00:34,397 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNEIA5 2011-07-15 14:00:34,397 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNFIA5 2011-07-15 14:00:34,397 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNGIA5 2011-07-15 14:00:34,397 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNHIA5 2011-07-15 14:00:34,398 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNIIA5 2011-07-15 14:00:34,398 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNJIA5 2011-07-15 14:00:34,398 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNKIA5 2011-07-15 14:00:34,398 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNLIA5 2011-07-15 14:00:34,398 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNMIA5 2011-07-15 14:00:34,399 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNNIA5 2011-07-15 14:00:34,399 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNOIA5 2011-07-15 14:00:34,399 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNPIA5 2011-07-15 14:00:34,399 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDOBIA5 2011-07-15 14:00:34,400 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNQIA5 2011-07-15 14:00:34,400 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNRIA5 2011-07-15 14:00:34,400 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNSIA5 2011-07-15 14:00:34,400 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDNTIA5 2011-07-15 14:00:34,400 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDOCIA5 2011-07-15 14:00:34,401 DEBUG [testMaximumBatchRowsDb] process.ProcessTestBase deleteSfdcRecords (ProcessTestBase.java:539) - Deleting record id:001D000000JJDODIA5 2011-07-15 14:00:34,401 DEBUG +
+
+ + +
+
+
+ + \ No newline at end of file diff --git a/src/main/resources/web/quality-foundry.css b/src/main/resources/web/quality-foundry.css new file mode 100644 index 0000000..e886384 --- /dev/null +++ b/src/main/resources/web/quality-foundry.css @@ -0,0 +1,87 @@ +.qf-page-background { + background-repeat:no-repeat; + background-attachment:fixed; + + background-image: -ms-linear-gradient(top, #FFFFFF 0%, #aaccdd 100%); /* IE10 Consumer Preview */ + background-image: -moz-linear-gradient(top, #FFFFFF 0%, #aaccdd 100%); /* Mozilla Firefox */ + background-image: -o-linear-gradient(top, #FFFFFF 0%, #aaccdd 100%); /* Opera */ + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFFFFF), color-stop(1, #aaccdd)); /* Webkit (Safari/Chrome 10) */ + background-image: -webkit-linear-gradient(top, #FFFFFF 0%, #aaccdd 100%); /* Webkit (Chrome 11+) */ + background-image: linear-gradient(to bottom, #FFFFFF 0%, #aaccdd 100%); /* W3C Markup, IE10 Release Preview */ +} + +.qf-header { + height:80px; + + padding-left:20px; + margin-bottom:20px; + margin-left:20px; + margin-right:20px; + + -moz-border-radius: 15px; + border-radius: 15px; +} + +.qf-logo{ + margin-left:20px; + margin-bottom:0px; +} + +.qf-search{ + float:right; + padding-top:2%; +} + +.qf-container { + /*size of stripes*/ + background-size: 2px 2px; + -webkit-background-size: 2px 2px; + -moz-background-size: 2px 2px; + + /* background color and stripes*/ + background-color: rgba(209, 209, 209, .6); + background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(.5, rgba(255, 255, 255, .2)), color-stop(.5, transparent), to(transparent)); + background-image: -moz-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent); + background-image: -o-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent); + background-image: linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent); + + margin-left:15px; + margin-right:15px; + margin-bottom:40px; + padding-left:0px; + padding-top:0px; + padding-right:0px; + + -moz-border-radius: 15px; + border-radius:15px; + + -moz-box-shadow: 0px 1px 5px 5px #888; + -webkit-box-shadow: 0px 1px 5px 5px #888; + box-shadow: 0px 1px 5px 5px #888; +} + +.qf-content{ + background-color:white; + padding:15px; + margin-right:0px; + border-top-right-radius:15px; + border-bottom-right-radius:15px; + box-shadow: inset 3px 0px 3px #888; +} + +.qf-sidebar { + background-color:transparent; + + margin-top:0px; + margin-bottom:0px; + + padding-bottom:20px; + padding-top:20px; + padding-left:20px; + padding-right:0px; +} + +.qf-accordion-item { + outline: 0 none; + -moz-outline: 0 none; +} diff --git a/src/main/resources/web/scripts/bootstrap/bootstrap-typeahead.js b/src/main/resources/web/scripts/bootstrap/bootstrap-typeahead.js new file mode 100644 index 0000000..ad44b90 --- /dev/null +++ b/src/main/resources/web/scripts/bootstrap/bootstrap-typeahead.js @@ -0,0 +1,285 @@ +/* ============================================================= + * bootstrap-typeahead.js v2.0.4 + * http://twitter.github.com/bootstrap/javascript.html#typeahead + * ============================================================= + * Copyright 2012 Twitter, Inc. + * + * Licensed 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. + * ============================================================ */ + + +!function($){ + + "use strict"; // jshint ;_; + + + /* TYPEAHEAD PUBLIC CLASS DEFINITION + * ================================= */ + + var Typeahead = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, $.fn.typeahead.defaults, options) + this.matcher = this.options.matcher || this.matcher + this.sorter = this.options.sorter || this.sorter + this.highlighter = this.options.highlighter || this.highlighter + this.updater = this.options.updater || this.updater + this.$menu = $(this.options.menu).appendTo('body') + this.source = this.options.source + this.shown = false + this.listen() + } + + Typeahead.prototype = { + + constructor: Typeahead + + , select: function () { + var val = this.$menu.find('.active').attr('data-value') + this.$element + .val(this.updater(val)) + .change() + return this.hide() + } + + , updater: function (item) { + return item + } + + , show: function () { + var pos = $.extend({}, this.$element.offset(), { + height: this.$element[0].offsetHeight + }) + + this.$menu.css({ + top: pos.top + pos.height + , left: pos.left + }) + + this.$menu.show() + this.shown = true + return this + } + + , hide: function () { + this.$menu.hide() + this.shown = false + return this + } + + , lookup: function (event) { + var that = this + , items + , q + + this.query = this.$element.val() + + if (!this.query) { + return this.shown ? this.hide() : this + } + + items = $.grep(this.source, function (item) { + return that.matcher(item) + }) + + items = this.sorter(items) + + if (!items.length) { + return this.shown ? this.hide() : this + } + + return this.render(items.slice(0, this.options.items)).show() + } + + , matcher: function (item) { + return ~item.toLowerCase().indexOf(this.query.toLowerCase()) + } + + , sorter: function (items) { + var beginswith = [] + , caseSensitive = [] + , caseInsensitive = [] + , item + + while (item = items.shift()) { + if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item) + else if (~item.indexOf(this.query)) caseSensitive.push(item) + else caseInsensitive.push(item) + } + + return beginswith.concat(caseSensitive, caseInsensitive) + } + + , highlighter: function (item) { + var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&') + return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) { + return '' + match + '' + }) + } + + , render: function (items) { + var that = this + + items = $(items).map(function (i, item) { + i = $(that.options.item).attr('data-value', item) + i.find('a').html(that.highlighter(item)) + return i[0] + }) + + items.first().addClass('active') + this.$menu.html(items) + return this + } + + , next: function (event) { + var active = this.$menu.find('.active').removeClass('active') + , next = active.next() + + if (!next.length) { + next = $(this.$menu.find('li')[0]) + } + + next.addClass('active') + } + + , prev: function (event) { + var active = this.$menu.find('.active').removeClass('active') + , prev = active.prev() + + if (!prev.length) { + prev = this.$menu.find('li').last() + } + + prev.addClass('active') + } + + , listen: function () { + this.$element + .on('blur', $.proxy(this.blur, this)) + .on('keypress', $.proxy(this.keypress, this)) + .on('keyup', $.proxy(this.keyup, this)) + + if ($.browser.webkit || $.browser.msie) { + this.$element.on('keydown', $.proxy(this.keypress, this)) + } + + this.$menu + .on('click', $.proxy(this.click, this)) + .on('mouseenter', 'li', $.proxy(this.mouseenter, this)) + } + + , keyup: function (e) { + switch(e.keyCode) { + case 40: // down arrow + case 38: // up arrow + break + + case 9: // tab + case 13: // enter + if (!this.shown) return + this.select() + break + + case 27: // escape + if (!this.shown) return + this.hide() + break + + default: + this.lookup() + } + + e.stopPropagation() + e.preventDefault() + } + + , keypress: function (e) { + if (!this.shown) return + + switch(e.keyCode) { + case 9: // tab + case 13: // enter + case 27: // escape + e.preventDefault() + break + + case 38: // up arrow + if (e.type != 'keydown') break + e.preventDefault() + this.prev() + break + + case 40: // down arrow + if (e.type != 'keydown') break + e.preventDefault() + this.next() + break + } + + e.stopPropagation() + } + + , blur: function (e) { + var that = this + setTimeout(function () { that.hide() }, 150) + } + + , click: function (e) { + e.stopPropagation() + e.preventDefault() + this.select() + } + + , mouseenter: function (e) { + this.$menu.find('.active').removeClass('active') + $(e.currentTarget).addClass('active') + } + + } + + + /* TYPEAHEAD PLUGIN DEFINITION + * =========================== */ + + $.fn.typeahead = function (option) { + return this.each(function () { + var $this = $(this) + , data = $this.data('typeahead') + , options = typeof option == 'object' && option + if (!data) $this.data('typeahead', (data = new Typeahead(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.typeahead.defaults = { + source: [] + , items: 8 + , menu: '' + , item: '
  • ' + } + + $.fn.typeahead.Constructor = Typeahead + + + /* TYPEAHEAD DATA-API + * ================== */ + + $(function () { + $('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) { + var $this = $(this) + if ($this.data('typeahead')) return + e.preventDefault() + $this.typeahead($this.data()) + }) + }) + +}(window.jQuery); \ No newline at end of file diff --git a/src/main/resources/web/scripts/bootstrap/css/bootstrap.css b/src/main/resources/web/scripts/bootstrap/css/bootstrap.css index bb40c85..e424408 100644 --- a/src/main/resources/web/scripts/bootstrap/css/bootstrap.css +++ b/src/main/resources/web/scripts/bootstrap/css/bootstrap.css @@ -511,7 +511,7 @@ h6 { } .page-header { - padding-bottom: 17px; + /* padding-bottom: 17px; */ margin: 18px 0; border-bottom: 1px solid #eeeeee; } diff --git a/src/main/resources/web/test-result.html b/src/main/resources/web/test-result.html new file mode 100644 index 0000000..db5d506 --- /dev/null +++ b/src/main/resources/web/test-result.html @@ -0,0 +1,315 @@ + + + + + ${test.runName} ${test.name} + + + + + + + + + + + + + + + + + + + + + +
    + + + + +
    + +
    + +
    + +
    + + +

    Test Inventory

    +
    + + + +

    Run 1

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +

    Run 2

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +

    Run 3 loading icon

    +
    +   Start Time 10:30 21-03-2012
    +   Generating Results...
    +
    +

    Run 4

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +

    Run 5

    +
    +   Start 10:30 21-03-2012
    +   End 20:30 21-03-2012
    +
    +

    Run 6

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +

    Run 7

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    + +
    +
    + +
    + + + + + +
    +
    +

    ${test.name} Details

    + + + + + + + + +
    + Status
    +   ${test.status}
    + Duration
    +   ${test.duration}
    +
    + Team Owner
    +   ${test.teamOwner}
    + Dev Owner
    +   ${test.devOwner}
    + Failure Owner
    +   ${test.failureOwner}
    +
    + Package
    +   ${test.package}
    + File
    +   ${test.file}
    + Class
    +   ${test.class}
    +
    + Failing Since
    +   ${test.failingSince}
    + Since Change
    +   ${test.sinceChange}
    +
    +
    +
    + + + + +

    Error Message

    +
    + ${test.errorMessage}
    + this
    + is
    + an
    + error
    + message +
    + +

    Stack Trace

    +
    + ${test.stackTrace}
    + and
    + this
    + is
    + a
    + stack
    + trace
    +
    + +

    Past Failures

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    RunSince ChangeFailing SinceDurationFailure Owner
    test nametest packagetest changetest failure ownertest duration
    test name2test package4test changetest failure ownertest duration
    test name3test packagetest changetest failure ownertest duration
    test name4test packagetest changetest failure ownertest duration
    test name5test packagetest changetest failure ownertest duration
    test name6test packagetest changetest failure ownertest duration
    test name7test packagetest changetest failure ownertest duration
    test name8test packagetest changetest failure ownertest duration
    + + +
    + ${test.output}
    + all the output! +
    + + + +
    +
    +
    + + \ No newline at end of file diff --git a/src/main/resources/web/tests-summary.html b/src/main/resources/web/tests-summary.html index 8941207..bda91c5 100644 --- a/src/main/resources/web/tests-summary.html +++ b/src/main/resources/web/tests-summary.html @@ -1,99 +1,163 @@ - + Test Results + - - + + - - - + + - -
    -

    Bootstrapped!

    -
    - -
    -
    - -
    + +
    + + + + +
    + +
    + +
    + +
    +

    Test Inventory

    +
    + + + +

    Run 1

    -
      -
    • Overview
    • -
    • Test results
    • -
    • Code coverage
    • -
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +

    Run 2

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    + +
    +

    Run 3 loading icon

    +
    +   Start Time 10:30 21-03-2012
    +   Generating Results...
    +
    -

    Run 2

    +

    Run 4

    -
      -
    • Overview
    • -
    • Test results
    • -
    • Code coverage
    • -
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    -

    Run 3

    +

    Run 5

    -
      -
    • Overview
    • -
    • Test results
    • -
    • Code coverage
    • -
    +   Start 10:30 21-03-2012
    +   End 20:30 21-03-2012
    -

    Run 4

    +

    Run 6

    -
      -
    • Overview
    • -
    • Test results
    • -
    • Code coverage
    • -
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +

    Run 7

    +
    +   Start Time 10:30 21-03-2012
    +   End Time 20:30 21-03-2012
    +
    +
    -
    +
    - -

    Failed Tests

    + + +
    + Jump to Flappers - All Tests +
    + + + - + @@ -102,87 +166,329 @@

    Run 4

    - + + + + + + + + + + + + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - - - - - + + + + + - + + +
    Test NameTest Name Package/Suite Name Since Change Bug/Failure Owner
    test nametest packagetest changetest failure ownertest duration
    test name2test package4test changetest failure ownertest duration
    ${test.name3}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name3test packagetest changetest failure ownertest duration
    ${test.name4}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name4test packagetest changetest failure ownertest duration
    ${test.name5}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name5test packagetest changetest failure ownertest duration
    ${test.name6}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name6test packagetest changetest failure ownertest duration
    ${test.name7}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name7test packagetest changetest failure ownertest duration
    ${test.name8}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name8test packagetest changetest failure ownertest duration
    ${test.name9}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name9test packagetest changetest failure ownertest duration
    ${test.name2}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name10test packagetest changetest failure ownertest duration
    ${test.name2}${test.package2}${test.since_change2}${test.failure_owner2}${test.duration2}test name11test packagetest changetest failure ownertest duration
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FTest NamePackage/Suite NameSince ChangeBug/Failure OwnerDuration
    10test nametest packagetest changetest failure ownertest duration
    9test name2test package4test changetest failure ownertest duration
    8test name3test packagetest changetest failure ownertest duration
    7test name4test packagetest changetest failure ownertest duration
    6test name5test packagetest changetest failure ownertest duration
    5test name6test packagetest changetest failure ownertest duration
    4test name7test packagetest changetest failure ownertest duration
    3test name8test packagetest changetest failure ownertest duration
    2test name9test packagetest changetest failure ownertest duration
    1test name10test packagetest changetest failure ownertest duration
    0test name11test packagetest changetest failure ownertest duration
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Package NameFailedSkippedPassedTotal
    package name1113
    package name3561122
    package name4710320
    package name51326
    package name634310
    package name70358
    package name824612
    diff --git a/src/test/java/com/force/taas/qf/MainTest.java b/src/test/java/com/force/taas/qf/MainTest.java new file mode 100644 index 0000000..c399bda --- /dev/null +++ b/src/test/java/com/force/taas/qf/MainTest.java @@ -0,0 +1,65 @@ +// Copyright (c) 2012 Gregory D. Wester +// +// Licensed 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. +package com.force.taas.qf; + +import org.glassfish.grizzly.http.server.HttpServer; + +import com.sun.jersey.core.header.MediaTypes; +import com.sun.jersey.api.client.Client; +import com.sun.jersey.api.client.WebResource; +import junit.framework.TestCase; + +/** + * + * @author gwester + * + */ +public class MainTest extends TestCase { + + private HttpServer httpServer; + + private WebResource r; + + public MainTest(String testName) { + super(testName); + } + + @Override + protected void setUp() throws Exception { + super.setUp(); + + //start the Grizzly2 web container + httpServer = WebServer.startServer(); + + // create the client + Client c = Client.create(); + r = c.resource(WebServer.BASE_URI); + } + + @Override + protected void tearDown() throws Exception { + super.tearDown(); + + httpServer.stop(); + } + + /** + * Test to see that the message "Got it!" is sent in the response. + */ + public void testBucketExists() { + String responseMsg = r.path("tests").get(String.class); + assertEquals("prodtest", responseMsg); + } + +}