Skip to content

Commit d21c5e7

Browse files
Merge pull request #9379 from benjamin-confino/9378-regex
Fix regex and add insert
2 parents ac10cbd + aafddcb commit d21c5e7

File tree

19 files changed

+299
-5
lines changed

19 files changed

+299
-5
lines changed

dev/com.ibm.ws.cdi.api_fat/.classpath

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
<classpathentry kind="src" path="test-applications/cdiCurrentTest.jar/src"/>
77
<classpathentry kind="src" path="test-applications/cdiCurrentTest.war/src"/>
88
<classpathentry kind="src" path="test-applications/injectInjectionPoint.war/src"/>
9+
<classpathentry kind="src" path="test-applications/injectInjectionPointXML.war/src"/>
910
<classpathentry kind="src" path="test-applications/injectInjectionPointAsParam.war/src"/>
1011
<classpathentry kind="src" path="test-applications/alterableContextExtension.jar/src"/>
1112
<classpathentry kind="src" path="test-applications/applicationExtension.jar/src"/>

dev/com.ibm.ws.cdi.api_fat/bnd.bnd

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ src: \
2323
test-applications/cdiCurrentTest.jar/src,\
2424
test-applications/cdiCurrentTest.war/src,\
2525
test-applications/injectInjectionPoint.war/src,\
26+
test-applications/injectInjectionPointXML.war/src,\
2627
test-applications/injectInjectionPointAsParam.war/src
2728

2829
tested.features:\
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
/*******************************************************************************
2+
* Copyright (c) 2014, 2019 IBM Corporation and others.
3+
* All rights reserved. This program and the accompanying materials
4+
* are made available under the terms of the Eclipse Public License v1.0
5+
* which accompanies this distribution, and is available at
6+
* http://www.eclipse.org/legal/epl-v10.html
7+
*
8+
* Contributors:
9+
* IBM Corporation - initial API and implementation
10+
*******************************************************************************/
11+
package com.ibm.ws.cdi12.fat.tests;
12+
13+
14+
import static org.junit.Assert.assertEquals;
15+
16+
import java.io.File;
17+
import java.util.List;
18+
19+
import org.junit.AfterClass;
20+
import org.junit.ClassRule;
21+
import org.junit.Test;
22+
23+
import org.jboss.shrinkwrap.api.Archive;
24+
import org.jboss.shrinkwrap.api.ArchivePaths;
25+
import org.jboss.shrinkwrap.api.ShrinkWrap;
26+
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
27+
import org.jboss.shrinkwrap.api.importer.ZipImporter;
28+
import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
29+
import org.jboss.shrinkwrap.api.spec.JavaArchive;
30+
import org.jboss.shrinkwrap.api.spec.ResourceAdapterArchive;
31+
import org.jboss.shrinkwrap.api.spec.WebArchive;
32+
33+
import com.ibm.ws.fat.util.BuildShrinkWrap;
34+
import com.ibm.ws.fat.util.LoggingTest;
35+
import com.ibm.ws.fat.util.ShrinkWrapSharedServer;
36+
import com.ibm.ws.fat.util.browser.WebBrowser;
37+
38+
import componenttest.annotation.AllowedFFDC;
39+
40+
public class InjectInjectionPointBeansXMLTest extends LoggingTest {
41+
42+
@ClassRule
43+
public static ShrinkWrapSharedServer SHARED_SERVER = new ShrinkWrapSharedServer("cdi12BeansXMLInjectInjectionPointServer");
44+
45+
/*
46+
* (non-Javadoc)
47+
*
48+
* @see com.ibm.ws.fat.LoggingTest#getSharedServer()
49+
*/
50+
@Override
51+
protected ShrinkWrapSharedServer getSharedServer() {
52+
return SHARED_SERVER;
53+
}
54+
55+
@BuildShrinkWrap
56+
public static Archive buildShrinkWrap() {
57+
58+
return ShrinkWrap.create(WebArchive.class, "injectInjectionPointBeansXML.war")
59+
.addClass("com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet")
60+
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");
61+
}
62+
63+
@Test
64+
@AllowedFFDC("com.ibm.ws.container.service.state.StateChangeException")
65+
public void testInjectInjectionPointBeansXML() throws Exception {
66+
List<String> logs = SHARED_SERVER.getLibertyServer().findStringsInLogs("CWWKZ0002E(?=.*injectInjectionPoint)(?=.*com.ibm.ws.container.service.state.StateChangeException)(?=.*org.jboss.weld.exceptions.DefinitionException)(?=.*WELD-001405)(?=.*BackedAnnotatedField)(?=.*com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet.thisShouldFail)");
67+
assertEquals("DefinitionException not found", 1, logs.size());
68+
}
69+
70+
@AfterClass
71+
public static void tearDown() throws Exception {
72+
if (SHARED_SERVER != null && SHARED_SERVER.getLibertyServer().isStarted()) {
73+
/*
74+
* Ignore CWWKZ0002E which is an error while starting an application
75+
*/
76+
SHARED_SERVER.getLibertyServer().stopServer("CWWKZ0002E");
77+
}
78+
}
79+
80+
}

dev/com.ibm.ws.cdi.api_fat/fat/src/com/ibm/ws/cdi12/fat/tests/InjectInjectionPointTest.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2014, 2018 IBM Corporation and others.
2+
* Copyright (c) 2014, 2019 IBM Corporation and others.
33
* All rights reserved. This program and the accompanying materials
44
* are made available under the terms of the Eclipse Public License v1.0
55
* which accompanies this distribution, and is available at
@@ -10,7 +10,11 @@
1010
*******************************************************************************/
1111
package com.ibm.ws.cdi12.fat.tests;
1212

13+
14+
import static org.junit.Assert.assertEquals;
15+
1316
import java.io.File;
17+
import java.util.List;
1418

1519
import org.junit.AfterClass;
1620
import org.junit.ClassRule;
@@ -32,7 +36,10 @@
3236
import com.ibm.ws.fat.util.browser.WebBrowser;
3337

3438
import componenttest.annotation.AllowedFFDC;
39+
import componenttest.custom.junit.runner.Mode;
40+
import componenttest.custom.junit.runner.Mode.TestMode;
3541

42+
@Mode(TestMode.FULL)
3643
public class InjectInjectionPointTest extends LoggingTest {
3744

3845
@ClassRule
@@ -52,14 +59,15 @@ protected ShrinkWrapSharedServer getSharedServer() {
5259
public static Archive buildShrinkWrap() {
5360

5461
return ShrinkWrap.create(WebArchive.class, "injectInjectionPoint.war")
55-
.addClass("com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet")
56-
.add(new FileAsset(new File("test-applications/injectInjectionPoint.war/resources/WEB-INF/beans.xml")), "/WEB-INF/beans.xml");
62+
.addClass("com.ibm.ws.fat.cdi.injectInjectionPoint.EmptyBean")
63+
.addClass("com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet");
5764
}
5865

5966
@Test
6067
@AllowedFFDC("com.ibm.ws.container.service.state.StateChangeException")
6168
public void testInjectInjectionPoint() throws Exception {
62-
SHARED_SERVER.getLibertyServer().findStringsInLogs("CWWKZ0002E(?=.*injectInjectionPoint)(?=.*com.ibm.ws.container.service.state.StateChangeException)(?=.*javax.enterprise.inject.spi.DefinitionException)(?=.*org.jboss.weld.exceptions.IllegalArgumentException)(?=.*WELD-001405)(?=.*BackedAnnotatedField)(?=.*com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet.thisShouldFail)");
69+
List<String> logs = SHARED_SERVER.getLibertyServer().findStringsInLogs("CWWKZ0002E(?=.*injectInjectionPoint)(?=.*com.ibm.ws.container.service.state.StateChangeException)(?=.*org.jboss.weld.exceptions.DefinitionException)(?=.*WELD-001405)(?=.*BackedAnnotatedField)(?=.*com.ibm.ws.fat.cdi.injectInjectionPoint.InjectInjectionPointServlet.thisShouldFail)");
70+
assertEquals("DefinitionException not found", 1, logs.size()); //Unlike the two sibling tests this only emits the message once.
6371
}
6472

6573
@AfterClass
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
/*******************************************************************************
2+
* Copyright (c) 2014, 2019 IBM Corporation and others.
3+
* All rights reserved. This program and the accompanying materials
4+
* are made available under the terms of the Eclipse Public License v1.0
5+
* which accompanies this distribution, and is available at
6+
* http://www.eclipse.org/legal/epl-v10.html
7+
*
8+
* Contributors:
9+
* IBM Corporation - initial API and implementation
10+
*******************************************************************************/
11+
package com.ibm.ws.cdi12.fat.tests;
12+
13+
14+
import static org.junit.Assert.assertEquals;
15+
16+
import java.io.File;
17+
import java.util.List;
18+
19+
import org.junit.AfterClass;
20+
import org.junit.ClassRule;
21+
import org.junit.Test;
22+
23+
import org.jboss.shrinkwrap.api.Archive;
24+
import org.jboss.shrinkwrap.api.ArchivePaths;
25+
import org.jboss.shrinkwrap.api.ShrinkWrap;
26+
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
27+
import org.jboss.shrinkwrap.api.asset.FileAsset;
28+
import org.jboss.shrinkwrap.api.importer.ZipImporter;
29+
import org.jboss.shrinkwrap.api.spec.EnterpriseArchive;
30+
import org.jboss.shrinkwrap.api.spec.JavaArchive;
31+
import org.jboss.shrinkwrap.api.spec.ResourceAdapterArchive;
32+
import org.jboss.shrinkwrap.api.spec.WebArchive;
33+
34+
import com.ibm.ws.fat.util.BuildShrinkWrap;
35+
import com.ibm.ws.fat.util.LoggingTest;
36+
import com.ibm.ws.fat.util.ShrinkWrapSharedServer;
37+
import com.ibm.ws.fat.util.browser.WebBrowser;
38+
39+
import componenttest.annotation.AllowedFFDC;
40+
import componenttest.custom.junit.runner.Mode;
41+
import componenttest.custom.junit.runner.Mode.TestMode;
42+
43+
@Mode(TestMode.FULL)
44+
public class InjectInjectionPointXMLTest extends LoggingTest {
45+
46+
@ClassRule
47+
public static ShrinkWrapSharedServer SHARED_SERVER = new ShrinkWrapSharedServer("cdi12XMLInjectInjectionPointServer");
48+
49+
/*
50+
* (non-Javadoc)
51+
*
52+
* @see com.ibm.ws.fat.LoggingTest#getSharedServer()
53+
*/
54+
@Override
55+
protected ShrinkWrapSharedServer getSharedServer() {
56+
return SHARED_SERVER;
57+
}
58+
59+
@BuildShrinkWrap
60+
public static Archive buildShrinkWrap() {
61+
62+
return ShrinkWrap.create(WebArchive.class, "injectInjectionPointXML.war")
63+
.addClass("com.ibm.ws.fat.cdi.injectInjectionPointXML.InjectInjectionPointServlet")
64+
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
65+
.add(new FileAsset(new File("test-applications/injectInjectionPointXML.war/resources/WEB-INF/web.xml")), "/WEB-INF/web.xml");
66+
}
67+
68+
@Test
69+
@AllowedFFDC("com.ibm.ws.container.service.state.StateChangeException")
70+
public void testInjectInjectionPointXML() throws Exception {
71+
List<String> logs = SHARED_SERVER.getLibertyServer().findStringsInLogs("CWWKZ0002E(?=.*injectInjectionPoint)(?=.*com.ibm.ws.container.service.state.StateChangeException)(?=.*org.jboss.weld.exceptions.DefinitionException)(?=.*WELD-001405)(?=.*BackedAnnotatedField)(?=.*com.ibm.ws.fat.cdi.injectInjectionPointXML.InjectInjectionPointServlet.thisShouldFail)");
72+
assertEquals("DefinitionException not found", 1, logs.size());
73+
}
74+
75+
@AfterClass
76+
public static void tearDown() throws Exception {
77+
if (SHARED_SERVER != null && SHARED_SERVER.getLibertyServer().isStarted()) {
78+
/*
79+
* Ignore CWWKZ0002E which is an error while starting an application
80+
*/
81+
SHARED_SERVER.getLibertyServer().stopServer("CWWKZ0002E");
82+
}
83+
}
84+
85+
}

dev/com.ibm.ws.cdi.api_fat/fat/src/com/ibm/ws/cdi12/suite/FATSuite.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
import com.ibm.ws.cdi12.fat.tests.CDICurrentTest;
3434
import com.ibm.ws.cdi12.fat.tests.ConversationFilterTest;
3535
import com.ibm.ws.cdi12.fat.tests.InjectInjectionPointTest;
36+
import com.ibm.ws.cdi12.fat.tests.InjectInjectionPointBeansXMLTest;
37+
import com.ibm.ws.cdi12.fat.tests.InjectInjectionPointXMLTest;
3638
import com.ibm.ws.cdi12.fat.tests.InjectInjectionPointAsParamTest;
3739
import com.ibm.ws.fat.util.FatLogHandler;
3840

@@ -45,6 +47,8 @@
4547
CDICurrentTest.class,
4648
ConversationFilterTest.class,
4749
InjectInjectionPointTest.class,
50+
InjectInjectionPointBeansXMLTest.class,
51+
InjectInjectionPointXMLTest.class,
4852
InjectInjectionPointAsParamTest.class,
4953
})
5054
public class FATSuite {
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/dropins
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
bootstrap.include=../testports.properties
2+
osgi.console=7777
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<server description="Server for testing CDI">
2+
3+
<include location="../fatTestPorts.xml"/>
4+
5+
<featureManager>
6+
<feature>osgiconsole-1.0</feature>
7+
<feature>cdi-1.2</feature>
8+
<feature>servlet-3.1</feature>
9+
</featureManager>
10+
</server>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
-Xtrace:iprint=mt,methods={src/com/ibm/ws/cdi/impl/AbstractCDIRuntime.getCurrentBeanManager},trigger=method{src/com/ibm/ws/cdi/impl/AbstractCDIRuntime.getCurrentBeanManager,jstacktrace}

0 commit comments

Comments
 (0)