Author: dblevins
Date: Thu Oct 6 10:54:09 2011
New Revision: 1179567
URL: http://svn.apache.org/viewvc?rev=1179567&view=rev
Log:
couple extra tests/examples to show some unique features
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/Tests.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/Car.java
- copied, changed from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/ServletCdiConstructorInjectionTest.java
- copied, changed from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/SimpleServlet.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/Car.java
- copied, changed from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/ServletCdiInjectionTest.java
- copied, changed from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/SimpleServlet.java
- copied, changed from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/PojoServlet.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/AssemblyLine.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/Car.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/ServletCdiProducerTest.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/SimpleServlet.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Pickup.java
- copied, changed from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Pickup.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/PickupEditor.java
- copied, changed from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/PickupEditor.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Stratocaster.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/StratocasterTest.java
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Style.java
- copied, changed from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Style.java
Removed:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/Tests.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/Tests.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/Tests.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/Tests.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,51 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+
+import static junit.framework.Assert.assertNotNull;
+import static junit.framework.Assert.assertTrue;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class Tests {
+
+
+ public static void assertOutput(String location, String expectedOutput)
throws IOException {
+ final InputStream is = new URL(location).openStream();
+ final ByteArrayOutputStream os = new ByteArrayOutputStream();
+
+ int bytesRead = -1;
+ byte[] buffer = new byte[8192];
+ while ((bytesRead = is.read(buffer)) > -1) {
+ os.write(buffer, 0, bytesRead);
+ }
+
+ is.close();
+ os.close();
+
+ String output = new String(os.toByteArray(), "UTF-8");
+ assertNotNull("Response shouldn't be null", output);
+ assertTrue("Output should contain: " + expectedOutput,
output.contains(expectedOutput));
+ }
+
+}
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/Car.java
(from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/Car.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/Car.java&p1=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/Car.java
Thu Oct 6 10:54:09 2011
@@ -1,4 +1,4 @@
-package org.apache.openejb.arquillian.tests.cdiinject;
+package org.apache.openejb.arquillian.tests.cdi.constructor;
public class Car {
private final String make = "Lexus", model = "IS 350";
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/ServletCdiConstructorInjectionTest.java
(from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/ServletCdiConstructorInjectionTest.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/ServletCdiConstructorInjectionTest.java&p1=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/ServletCdiConstructorInjectionTest.java
Thu Oct 6 10:54:09 2011
@@ -14,9 +14,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.openejb.arquillian.tests.cdiinject;
+package org.apache.openejb.arquillian.tests.cdi.constructor;
import org.apache.openejb.arquillian.tests.TestRun;
+import org.apache.openejb.arquillian.tests.Tests;
import org.jboss.arquillian.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ArchivePaths;
@@ -25,28 +26,16 @@ import org.jboss.shrinkwrap.api.asset.Em
import org.jboss.shrinkwrap.api.asset.StringAsset;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.jboss.shrinkwrap.descriptor.api.Descriptors;
-import org.jboss.shrinkwrap.descriptor.api.Node;
import org.jboss.shrinkwrap.descriptor.api.spec.servlet.web.WebAppDescriptor;
-import org.jboss.shrinkwrap.descriptor.spi.NodeProvider;
import org.junit.Test;
import org.junit.runner.RunWith;
-import javax.ejb.EJB;
-import javax.ejb.Local;
-import javax.ejb.LocalBean;
-import javax.ejb.Stateless;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertTrue;
@RunWith(Arquillian.class)
-public class ServletCdiInjectionTest {
+public class ServletCdiConstructorInjectionTest {
- public static final String TEST_NAME =
ServletCdiInjectionTest.class.getSimpleName();
+ public static final String TEST_NAME =
ServletCdiConstructorInjectionTest.class.getSimpleName();
@Test
public void pojoInjectionShouldSucceed() throws Exception {
@@ -58,20 +47,16 @@ public class ServletCdiInjectionTest {
validateTest("beanManager");
}
-
-// @Test
- public void testNothing() {
- }
-
@Deployment(testable = false)
public static WebArchive createDeployment() {
+
WebAppDescriptor descriptor =
Descriptors.create(WebAppDescriptor.class)
.version("3.0")
- .servlet(PojoServlet.class, "/" + TEST_NAME);
+ .servlet(SimpleServlet.class, "/" + TEST_NAME);
WebArchive archive = ShrinkWrap.create(WebArchive.class, TEST_NAME +
".war")
.addClass(TestRun.class)
- .addClass(PojoServlet.class)
+ .addClass(SimpleServlet.class)
.addClass(Car.class)
.setWebXML(new StringAsset(descriptor.exportAsString()))
.addAsWebInfResource(EmptyAsset.INSTANCE,
ArchivePaths.create("beans.xml"));
@@ -82,23 +67,8 @@ public class ServletCdiInjectionTest {
}
private void validateTest(String expectedOutput) throws IOException {
- final InputStream is = new URL("http://localhost:9080/" + TEST_NAME +
"/" + TEST_NAME).openStream();
- final ByteArrayOutputStream os = new ByteArrayOutputStream();
-
- int bytesRead = -1;
- byte[] buffer = new byte[8192];
- while ((bytesRead = is.read(buffer)) > -1) {
- os.write(buffer, 0, bytesRead);
- }
-
- is.close();
- os.close();
-
- String output = new String(os.toByteArray(), "UTF-8");
- assertNotNull("Response shouldn't be null", output);
- assertTrue("Output should contain: " + expectedOutput,
output.contains(expectedOutput));
+ Tests.assertOutput("http://localhost:9080/" + TEST_NAME + "/" +
TEST_NAME, expectedOutput);
}
-
}
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/SimpleServlet.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/SimpleServlet.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/SimpleServlet.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/constructor/SimpleServlet.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,51 @@
+package org.apache.openejb.arquillian.tests.cdi.constructor;
+
+import org.apache.commons.lang.StringUtils;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
+import javax.enterprise.inject.spi.BeanManager;
+import javax.inject.Inject;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
+public class SimpleServlet extends HttpServlet {
+
+ @Resource
+ private BeanManager beanManager;
+
+ private final Car car;
+
+ public SimpleServlet() {
+ car = null;
+ }
+
+ @Inject
+ public SimpleServlet(Car car) {
+ this.car = car;
+ }
+
+ @PostConstruct
+ public void construct() {
+ System.out.println("construct");
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
+ String name = req.getParameter("name");
+ if (StringUtils.isEmpty(name)) {
+ name = "OpenEJB";
+ }
+
+ if (car != null) {
+ resp.getOutputStream().println(car.drive(name));
+ }
+
+ if (beanManager != null) {
+ resp.getOutputStream().println("beanManager");
+ }
+ }
+}
\ No newline at end of file
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/Car.java
(from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/Car.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/Car.java&p1=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/Car.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/Car.java
Thu Oct 6 10:54:09 2011
@@ -1,4 +1,4 @@
-package org.apache.openejb.arquillian.tests.cdiinject;
+package org.apache.openejb.arquillian.tests.cdi.inject;
public class Car {
private final String make = "Lexus", model = "IS 350";
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/ServletCdiInjectionTest.java
(from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/ServletCdiInjectionTest.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/ServletCdiInjectionTest.java&p1=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/ServletCdiInjectionTest.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/ServletCdiInjectionTest.java
Thu Oct 6 10:54:09 2011
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.openejb.arquillian.tests.cdiinject;
+package org.apache.openejb.arquillian.tests.cdi.inject;
import org.apache.openejb.arquillian.tests.TestRun;
import org.jboss.arquillian.api.Deployment;
@@ -25,16 +25,10 @@ import org.jboss.shrinkwrap.api.asset.Em
import org.jboss.shrinkwrap.api.asset.StringAsset;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.jboss.shrinkwrap.descriptor.api.Descriptors;
-import org.jboss.shrinkwrap.descriptor.api.Node;
import org.jboss.shrinkwrap.descriptor.api.spec.servlet.web.WebAppDescriptor;
-import org.jboss.shrinkwrap.descriptor.spi.NodeProvider;
import org.junit.Test;
import org.junit.runner.RunWith;
-import javax.ejb.EJB;
-import javax.ejb.Local;
-import javax.ejb.LocalBean;
-import javax.ejb.Stateless;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -58,20 +52,16 @@ public class ServletCdiInjectionTest {
validateTest("beanManager");
}
-
-// @Test
- public void testNothing() {
- }
-
@Deployment(testable = false)
public static WebArchive createDeployment() {
+
WebAppDescriptor descriptor =
Descriptors.create(WebAppDescriptor.class)
.version("3.0")
- .servlet(PojoServlet.class, "/" + TEST_NAME);
+ .servlet(SimpleServlet.class, "/" + TEST_NAME);
WebArchive archive = ShrinkWrap.create(WebArchive.class, TEST_NAME +
".war")
.addClass(TestRun.class)
- .addClass(PojoServlet.class)
+ .addClass(SimpleServlet.class)
.addClass(Car.class)
.setWebXML(new StringAsset(descriptor.exportAsString()))
.addAsWebInfResource(EmptyAsset.INSTANCE,
ArchivePaths.create("beans.xml"));
@@ -100,6 +90,3 @@ public class ServletCdiInjectionTest {
}
}
-
-
-
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/SimpleServlet.java
(from r1179532,
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/PojoServlet.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/SimpleServlet.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/SimpleServlet.java&p1=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/PojoServlet.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdiinject/PojoServlet.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/inject/SimpleServlet.java
Thu Oct 6 10:54:09 2011
@@ -1,4 +1,4 @@
-package org.apache.openejb.arquillian.tests.cdiinject;
+package org.apache.openejb.arquillian.tests.cdi.inject;
import java.io.IOException;
@@ -13,7 +13,7 @@ import javax.servlet.http.HttpServletRes
import org.apache.commons.lang.StringUtils;
-public class PojoServlet extends HttpServlet {
+public class SimpleServlet extends HttpServlet {
@Resource
private BeanManager beanManager;
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/AssemblyLine.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/AssemblyLine.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/AssemblyLine.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/AssemblyLine.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,30 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.cdi.producer;
+
+import javax.enterprise.inject.Produces;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class AssemblyLine {
+
+ @Produces
+ public Car createFancyCar() {
+ return new Car("Lexus", "IS 350", 2011);
+ }
+}
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/Car.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/Car.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/Car.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/Car.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,38 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.cdi.producer;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class Car {
+
+ private final String make;
+ private final String model;
+ private final int year;
+
+ public Car(final String lexus, final String s, final int i) {
+ this.make = lexus;
+ this.model = s;
+ this.year = i;
+ }
+
+ public String drive(String name) {
+ return name + " is on the wheel of a " + year + " " + make + " " +
model;
+ }
+
+}
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/ServletCdiProducerTest.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/ServletCdiProducerTest.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/ServletCdiProducerTest.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/ServletCdiProducerTest.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,77 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.cdi.producer;
+
+import org.apache.openejb.arquillian.tests.TestRun;
+import org.apache.openejb.arquillian.tests.Tests;
+import
org.apache.openejb.arquillian.tests.cdi.constructor.ServletCdiConstructorInjectionTest;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.ArchivePaths;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.EmptyAsset;
+import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.jboss.shrinkwrap.descriptor.api.Descriptors;
+import org.jboss.shrinkwrap.descriptor.api.spec.servlet.web.WebAppDescriptor;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import java.io.IOException;
+
+/**
+ * @version $Rev$ $Date$
+ */
+@RunWith(Arquillian.class)
+public class ServletCdiProducerTest {
+ public static final String TEST_NAME =
ServletCdiConstructorInjectionTest.class.getSimpleName();
+
+ @Test
+ public void pojoInjectionShouldSucceed() throws Exception {
+ validateTest("OpenEJB is on the wheel of a 2011 Lexus IS 350");
+ }
+
+ @Test
+ public void beanManagerInjectionShouldSucceed() throws Exception {
+ validateTest("beanManager");
+ }
+
+ @Deployment(testable = false)
+ public static WebArchive createDeployment() {
+
+ WebAppDescriptor descriptor =
Descriptors.create(WebAppDescriptor.class)
+ .version("3.0")
+ .servlet(SimpleServlet.class, "/" + TEST_NAME);
+
+ WebArchive archive = ShrinkWrap.create(WebArchive.class, TEST_NAME +
".war")
+ .addClass(TestRun.class)
+ .addClass(SimpleServlet.class)
+ .addClass(Car.class)
+ .addClass(AssemblyLine.class)
+ .setWebXML(new StringAsset(descriptor.exportAsString()))
+ .addAsWebInfResource(EmptyAsset.INSTANCE,
ArchivePaths.create("beans.xml"));
+
+ System.err.println(descriptor.exportAsString());
+
+ return archive;
+ }
+
+ private void validateTest(String expectedOutput) throws IOException {
+ Tests.assertOutput("http://localhost:9080/" + TEST_NAME + "/" +
TEST_NAME, expectedOutput);
+ }
+
+}
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/SimpleServlet.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/SimpleServlet.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/SimpleServlet.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/cdi/producer/SimpleServlet.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,67 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.cdi.producer;
+
+import org.apache.commons.lang.StringUtils;
+
+import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
+import javax.enterprise.inject.spi.BeanManager;
+import javax.inject.Inject;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
+public class SimpleServlet extends HttpServlet {
+
+ @Resource
+ private BeanManager beanManager;
+
+ private final Car car;
+
+ public SimpleServlet() {
+ car = null;
+ }
+
+ @Inject
+ public SimpleServlet(Car car) {
+ this.car = car;
+ }
+
+ @PostConstruct
+ public void construct() {
+ System.out.println("construct");
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
+ String name = req.getParameter("name");
+ if (StringUtils.isEmpty(name)) {
+ name = "OpenEJB";
+ }
+
+ if (car != null) {
+ resp.getOutputStream().println(car.drive(name));
+ }
+
+ if (beanManager != null) {
+ resp.getOutputStream().println("beanManager");
+ }
+ }
+}
\ No newline at end of file
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Pickup.java
(from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Pickup.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Pickup.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Pickup.java&p1=openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Pickup.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Pickup.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Pickup.java
Thu Oct 6 10:54:09 2011
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.superbiz.enventries;
+package org.apache.openejb.arquillian.tests.ext.enventries;
//START SNIPPET: code
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/PickupEditor.java
(from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/PickupEditor.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/PickupEditor.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/PickupEditor.java&p1=openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/PickupEditor.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/PickupEditor.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/PickupEditor.java
Thu Oct 6 10:54:09 2011
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.superbiz.enventries;
+package org.apache.openejb.arquillian.tests.ext.enventries;
/**
* With a java.beans.PropertyEditor, you can go way beyond the built-in
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Stratocaster.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Stratocaster.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Stratocaster.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Stratocaster.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,124 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.ext.enventries;
+
+import javax.annotation.Resource;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+import static java.util.Arrays.asList;
+import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.fail;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class Stratocaster extends HttpServlet {
+
+
+ @Resource(name = "pickups")
+ private List<Pickup> pickups;
+
+ @Resource(name = "style")
+ private Style style;
+
+ @Resource(name = "dateCreated")
+ private Date dateCreated;
+
+ @Resource(name = "guitarStringGuages")
+ private Map<String, Float> guitarStringGuages;
+
+ @Resource(name = "certificateOfAuthenticity")
+ private File certificateOfAuthenticity;
+
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
+ resp.setContentType("text/plain");
+ final PrintWriter writer = resp.getWriter();
+
+ try {
+
+ try {
+ final Date date =
DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.US).parse("Mar 1, 1962");
+ assertEquals("Strat.getDateCreated()", date,
this.getDateCreated());
+ } catch (ParseException e) {
+ fail(e.getMessage());
+ }
+
+ List<Pickup> pickups = asList(Pickup.SINGLE_COIL,
Pickup.SINGLE_COIL, Pickup.SINGLE_COIL);
+ assertEquals("Strat.getPickups()", pickups, this.getPickups());
+
+ assertEquals("Strat.getStyle()", Style.VINTAGE, this.getStyle());
+
+ assertEquals("Strat.getStringGuage(\"E1\")", 0.052F,
this.getStringGuage("E1"));
+ assertEquals("Strat.getStringGuage(\"A\")", 0.042F,
this.getStringGuage("A"));
+ assertEquals("Strat.getStringGuage(\"D\")", 0.030F,
this.getStringGuage("D"));
+ assertEquals("Strat.getStringGuage(\"G\")", 0.017F,
this.getStringGuage("G"));
+ assertEquals("Strat.getStringGuage(\"B\")", 0.013F,
this.getStringGuage("B"));
+ assertEquals("Strat.getStringGuage(\"E\")", 0.010F,
this.getStringGuage("E"));
+
+ File file = new File("/tmp/strat-certificate.txt");
+ assertEquals("Strat.getCertificateOfAuthenticity()", file,
this.getCertificateOfAuthenticity());
+
+ writer.write("[passed]");
+ } catch (Throwable e) {
+ writer.println("false");
+ writer.println("");
+ writer.println("STACKTRACE");
+ writer.println("");
+ e.printStackTrace(writer);
+ }
+ }
+
+ public Date getDateCreated() {
+ return dateCreated;
+ }
+
+ /**
+ * Gets the guage of the electric guitar strings used in this guitar.
+ *
+ * @param string
+ * @return
+ */
+ public float getStringGuage(String string) {
+ return guitarStringGuages.get(string);
+ }
+
+ public List<Pickup> getPickups() {
+ return pickups;
+ }
+
+ public Style getStyle() {
+ return style;
+ }
+
+ public File getCertificateOfAuthenticity() {
+ return certificateOfAuthenticity;
+ }
+}
Added:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/StratocasterTest.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/StratocasterTest.java?rev=1179567&view=auto
==============================================================================
---
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/StratocasterTest.java
(added)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/StratocasterTest.java
Thu Oct 6 10:54:09 2011
@@ -0,0 +1,88 @@
+/**
+ * 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.
+ */
+package org.apache.openejb.arquillian.tests.ext.enventries;
+
+import org.apache.openejb.arquillian.tests.Tests;
+import org.apache.openejb.arquillian.tests.enventry.Code;
+import org.apache.openejb.arquillian.tests.enventry.PojoServlet;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.jboss.shrinkwrap.descriptor.api.Descriptors;
+import org.jboss.shrinkwrap.descriptor.api.Node;
+import org.jboss.shrinkwrap.descriptor.api.spec.servlet.web.WebAppDescriptor;
+import org.jboss.shrinkwrap.descriptor.spi.NodeProvider;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import java.io.IOException;
+
+/**
+ * @version $Rev$ $Date$
+ */
+@RunWith(Arquillian.class)
+public class StratocasterTest {
+
+ public static final String TEST_NAME =
StratocasterTest.class.getSimpleName();
+
+ @Test
+ public void lookupEnvEntryInjectionShouldSucceed() throws Exception {
+ validateTest("[passed]");
+ }
+
+ @Deployment(testable = false)
+ public static WebArchive createDeployment() {
+ WebAppDescriptor descriptor =
Descriptors.create(WebAppDescriptor.class)
+ .version("3.0")
+ .servlet(Stratocaster.class, "/" + TEST_NAME);
+
+ addEnvEntry(descriptor, "guitarStringGuages", "java.lang.String",
"E1=0.052\nA=0.042\nD=0.030\nG=0.017\nB=0.013\nE=0.010");
+ addEnvEntry(descriptor, "certificateOfAuthenticity",
"java.lang.String", "/tmp/strat-certificate.txt");
+ addEnvEntry(descriptor, "dateCreated", "java.lang.String",
"1962-03-01");
+ addEnvEntry(descriptor, "pickups", "java.lang.String", "S,S,S");
+ addEnvEntry(descriptor, "style", "java.lang.String", "VINTAGE");
+
+ WebArchive archive = ShrinkWrap.create(WebArchive.class, TEST_NAME +
".war")
+ .addClass(PojoServlet.class)
+ .addClass(Code.class)
+ .setWebXML(new StringAsset(descriptor.exportAsString()));
+
+ System.err.println(descriptor.exportAsString());
+
+ return archive;
+ }
+
+ private static void addEnvEntry(WebAppDescriptor descriptor, String name,
String type, String value) {
+ Node rootNode = ((NodeProvider) descriptor).getRootNode();
+ Node appNode = rootNode.get("/web-app").iterator().next();
+ appNode.create("/env-entry")
+ .create("env-entry-name").text(name)
+ .parent()
+ .create("env-entry-type").text(type)
+ .parent()
+ .create("env-entry-value").text(value)
+ ;
+
+ }
+
+ private void validateTest(String expectedOutput) throws IOException {
+ Tests.assertOutput("http://localhost:9080/" + TEST_NAME + "/" +
TEST_NAME, expectedOutput);
+ }
+
+}
Copied:
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Style.java
(from r1179532,
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Style.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Style.java?p2=openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Style.java&p1=openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Style.java&r1=1179532&r2=1179567&rev=1179567&view=diff
==============================================================================
---
openejb/trunk/openejb/examples/custom-injection/src/main/java/org/superbiz/enventries/Style.java
(original)
+++
openejb/trunk/arquillian-tomee/arquillian-tomee-tests/src/test/java/org/apache/openejb/arquillian/tests/ext/enventries/Style.java
Thu Oct 6 10:54:09 2011
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.superbiz.enventries;
+package org.apache.openejb.arquillian.tests.ext.enventries;
/**
* @version $Revision$ $Date$