You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2014/03/28 15:26:41 UTC
svn commit: r1582760 - in /myfaces/core/trunk/impl/src/test:
java/org/apache/myfaces/config/ java/org/apache/myfaces/lifecycle/
java/org/apache/myfaces/mc/test/core/runner/
resources/org/apache/myfaces/config/ resources/org/apache/myfaces/lifecycle/
Author: lu4242
Date: Fri Mar 28 14:26:41 2014
New Revision: 1582760
URL: http://svn.apache.org/r1582760
Log:
commit tests used to check ordering algorithm and fix small bug found in myfaces runner for test classes internally
Added:
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerA.java
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerB.java
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/PhaseListenerOrderingTest.java
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/after-others-config.xml
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/before-others-config.xml
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/no-name-config.xml
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/a-faces-config.xml
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/b-faces-config.xml
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/dummy.xhtml
- copied, changed from r1582218, myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/redirect1.xhtml
Modified:
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/config/OrderingFacesConfigTest.java
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/mc/test/core/runner/AbstractJsfTestContainer.java
Modified: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/config/OrderingFacesConfigTest.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/config/OrderingFacesConfigTest.java?rev=1582760&r1=1582759&r2=1582760&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/config/OrderingFacesConfigTest.java (original)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/config/OrderingFacesConfigTest.java Fri Mar 28 14:26:41 2014
@@ -417,6 +417,171 @@ public class OrderingFacesConfigTest ext
//printFacesConfigList("Sorted List", sortedList);
}
+ public void testBeforeOthers1() throws Exception
+ {
+ FacesConfig cfgA = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgB = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgC = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "before-others-config.xml"), "before-others-config.xml");
+ FacesConfig cfgD = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgE = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+
+ List<FacesConfig> appConfigResources = new ArrayList<FacesConfig>();
+ appConfigResources.add(cfgA);
+ appConfigResources.add(cfgB);
+ appConfigResources.add(cfgC);
+ appConfigResources.add(cfgD);
+ appConfigResources.add(cfgE);
+
+ //Brute force
+ for (int i = 0; i < 30; i++)
+ {
+ Collections.shuffle(appConfigResources);
+ List<FacesConfig> sortedList = applyFullAlgorithm(appConfigResources);
+
+ assertEquals(cfgC, sortedList.get(0));
+ }
+ }
+
+ public void testAfterOthers1() throws Exception
+ {
+ FacesConfig cfgA = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgB = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgC = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "after-others-config.xml"), "after-others-config.xml");
+ FacesConfig cfgD = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgE = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+
+ List<FacesConfig> appConfigResources = new ArrayList<FacesConfig>();
+ appConfigResources.add(cfgA);
+ appConfigResources.add(cfgB);
+ appConfigResources.add(cfgC);
+ appConfigResources.add(cfgD);
+ appConfigResources.add(cfgE);
+
+ //Brute force
+ for (int i = 0; i < 30; i++)
+ {
+ Collections.shuffle(appConfigResources);
+ List<FacesConfig> sortedList = applyFullAlgorithm(appConfigResources);
+
+ assertEquals(cfgC, sortedList.get(sortedList.size()-1));
+ }
+ }
+
+ public void testBeforeOthers2() throws Exception
+ {
+ FacesConfig cfg1 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfg2 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfg3 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "before-others-config.xml"), "before-others-config.xml");
+ FacesConfig cfg4 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfg5 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "no-name-config.xml"), "no-name-config.xml");
+ FacesConfig cfgA = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "transitive-a-config.xml"), "transitive-a-config.xml");
+ FacesConfig cfgB = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "transitive-b-config.xml"), "transitive-b-config.xml");
+ FacesConfig cfgC = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "transitive-c-config.xml"), "transitive-c-config.xml");
+ FacesConfig cfg6 = _impl.getFacesConfig(getClass().getResourceAsStream(
+ "after-others-config.xml"), "after-others-config.xml");
+
+
+ List<FacesConfig> appConfigResources = new ArrayList<FacesConfig>();
+ appConfigResources.add(cfgA);
+ appConfigResources.add(cfgB);
+ appConfigResources.add(cfgC);
+ appConfigResources.add(cfg1);
+ appConfigResources.add(cfg2);
+ appConfigResources.add(cfg3);
+ appConfigResources.add(cfg4);
+ appConfigResources.add(cfg5);
+ appConfigResources.add(cfg6);
+
+ //Brute force
+ for (int i = 0; i < 30; i++)
+ {
+ Collections.shuffle(appConfigResources);
+ List<FacesConfig> sortedList = applyFullAlgorithm(appConfigResources);
+
+ assertEquals(cfg3, sortedList.get(0));
+
+ assertEquals(cfg6, sortedList.get(sortedList.size()-1));
+ }
+ }
+
+ public List<FacesConfig> applyFullAlgorithm(List<FacesConfig> appConfigResources) throws FacesException
+ {
+ DefaultFacesConfigurationMerger merger = new DefaultFacesConfigurationMerger();
+
+ System.out.println("");
+ System.out.print("Start List: [");
+ for (int i = 0; i < appConfigResources.size();i++)
+ {
+ if (appConfigResources.get(i).getName() == null)
+ {
+ System.out.print("No id,");
+ }
+ else
+ {
+ System.out.print(appConfigResources.get(i).getName()+",");
+ }
+ }
+ System.out.println("]");
+
+ List<FacesConfig> postOrderedList = merger.getPostOrderedList(appConfigResources);
+
+ System.out.print("Pre-Ordered-List: [");
+ for (int i = 0; i < postOrderedList.size();i++)
+ {
+ if (postOrderedList.get(i).getName() == null)
+ {
+ System.out.print("No id,");
+ }
+ else
+ {
+ System.out.print(postOrderedList.get(i).getName()+",");
+ }
+ }
+ System.out.println("]");
+
+ List<FacesConfig> sortedList = merger.sortRelativeOrderingList(postOrderedList);
+
+ if (sortedList == null)
+ {
+ System.out.print("After Fix ");
+ //The previous algorithm can't sort correctly, try this one
+ sortedList = merger.applySortingAlgorithm(appConfigResources);
+ }
+
+ System.out.print("Sorted-List: [");
+ for (int i = 0; i < sortedList.size();i++)
+ {
+ if (sortedList.get(i).getName() == null)
+ {
+ System.out.print("No id,");
+ }
+ else
+ {
+ System.out.print(sortedList.get(i).getName()+",");
+ }
+ }
+ System.out.println("]");
+
+ return sortedList;
+ }
/*
public void applyAlgorithm(List<FacesConfig> appConfigResources) throws FacesException
{
Added: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerA.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerA.java?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerA.java (added)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerA.java Fri Mar 28 14:26:41 2014
@@ -0,0 +1,64 @@
+/*
+ * 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.myfaces.lifecycle;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.faces.context.FacesContext;
+import javax.faces.event.PhaseEvent;
+import javax.faces.event.PhaseId;
+import javax.faces.event.PhaseListener;
+
+/**
+ *
+ * @author lu4242
+ */
+public class DummyPhaseListenerA implements PhaseListener
+{
+
+ @Override
+ public void afterPhase(PhaseEvent event)
+ {
+ getMsgList(event.getFacesContext()).add("DummyPhaseListenerA afterPhase");
+ }
+
+ @Override
+ public void beforePhase(PhaseEvent event)
+ {
+ getMsgList(event.getFacesContext()).add("DummyPhaseListenerA beforePhase");
+ }
+
+ @Override
+ public PhaseId getPhaseId()
+ {
+ return PhaseId.RENDER_RESPONSE;
+ }
+
+ public static List<String> getMsgList(FacesContext facesContext)
+ {
+ List<String> list = (List<String>) facesContext.getAttributes().get("msgList");
+ if (list == null)
+ {
+ list = new ArrayList<String>();
+ facesContext.getAttributes().put("msgList", list);
+ }
+ return list;
+ }
+}
Added: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerB.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerB.java?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerB.java (added)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/DummyPhaseListenerB.java Fri Mar 28 14:26:41 2014
@@ -0,0 +1,52 @@
+/*
+ * 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.myfaces.lifecycle;
+
+import javax.faces.event.PhaseEvent;
+import javax.faces.event.PhaseId;
+import javax.faces.event.PhaseListener;
+import static org.apache.myfaces.lifecycle.DummyPhaseListenerA.getMsgList;
+
+/**
+ *
+ * @author lu4242
+ */
+public class DummyPhaseListenerB implements PhaseListener
+{
+
+ @Override
+ public void afterPhase(PhaseEvent event)
+ {
+ getMsgList(event.getFacesContext()).add("DummyPhaseListenerB afterPhase");
+ }
+
+ @Override
+ public void beforePhase(PhaseEvent event)
+ {
+ getMsgList(event.getFacesContext()).add("DummyPhaseListenerB beforePhase");
+ }
+
+ @Override
+ public PhaseId getPhaseId()
+ {
+ return PhaseId.RENDER_RESPONSE;
+ }
+
+}
Added: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/PhaseListenerOrderingTest.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/PhaseListenerOrderingTest.java?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/PhaseListenerOrderingTest.java (added)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/lifecycle/PhaseListenerOrderingTest.java Fri Mar 28 14:26:41 2014
@@ -0,0 +1,59 @@
+/*
+ * 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.myfaces.lifecycle;
+
+import java.util.List;
+import org.apache.myfaces.mc.test.core.annotation.DeclareFacesConfig;
+import org.apache.myfaces.mc.test.core.annotation.TestContainer;
+import org.apache.myfaces.mc.test.core.runner.MyFacesContainer;
+import org.apache.myfaces.mc.test.core.runner.MyFacesTestRunner;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+/**
+ *
+ * @author lu4242
+ */
+@RunWith(MyFacesTestRunner.class)
+@DeclareFacesConfig({"/a-faces-config.xml","/b-faces-config.xml"})
+public class PhaseListenerOrderingTest
+{
+ @TestContainer
+ MyFacesContainer container;
+
+ @Test
+ public void testPhaseOrdering()
+ {
+ container.startViewRequest("/dummy.xhtml");
+
+ container.processLifecycleExecute();
+ container.processLifecycleRender();
+
+ List<String> msgList = DummyPhaseListenerA.getMsgList(container.getFacesContext());
+
+ Assert.assertEquals("DummyPhaseListenerB beforePhase", msgList.get(0));
+ Assert.assertEquals("DummyPhaseListenerA beforePhase", msgList.get(1));
+ Assert.assertEquals("DummyPhaseListenerA afterPhase", msgList.get(2));
+ Assert.assertEquals("DummyPhaseListenerB afterPhase", msgList.get(3));
+
+ container.endRequest();
+ }
+}
Modified: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/mc/test/core/runner/AbstractJsfTestContainer.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/mc/test/core/runner/AbstractJsfTestContainer.java?rev=1582760&r1=1582759&r2=1582760&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/mc/test/core/runner/AbstractJsfTestContainer.java (original)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/mc/test/core/runner/AbstractJsfTestContainer.java Fri Mar 28 14:26:41 2014
@@ -302,8 +302,8 @@ public class AbstractJsfTestContainer
{
return testConfig.webappResourcePath();
}
- return this.getClass().getName().substring(0,
- this.getClass().getName().lastIndexOf('.')).replace('.', '/')
+ return getTestJavaClass().getName().substring(0,
+ getTestJavaClass().getName().lastIndexOf('.')).replace('.', '/')
+ "/";
}
Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/after-others-config.xml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/after-others-config.xml?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/after-others-config.xml (added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/after-others-config.xml Fri Mar 28 14:26:41 2014
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<!--
+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.
+ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+ <ordering>
+ <after>
+ <others/>
+ </after>
+ </ordering>
+</faces-config>
Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/before-others-config.xml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/before-others-config.xml?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/before-others-config.xml (added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/before-others-config.xml Fri Mar 28 14:26:41 2014
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<!--
+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.
+ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+ <ordering>
+ <before>
+ <others/>
+ </before>
+ </ordering>
+</faces-config>
Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/no-name-config.xml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/no-name-config.xml?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/no-name-config.xml (added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/config/no-name-config.xml Fri Mar 28 14:26:41 2014
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!--
+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.
+ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+
+</faces-config>
Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/a-faces-config.xml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/a-faces-config.xml?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/a-faces-config.xml (added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/a-faces-config.xml Fri Mar 28 14:26:41 2014
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<!--
+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.
+ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+ <lifecycle>
+ <phase-listener>org.apache.myfaces.lifecycle.DummyPhaseListenerA</phase-listener>
+ </lifecycle>
+</faces-config>
Added: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/b-faces-config.xml
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/b-faces-config.xml?rev=1582760&view=auto
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/b-faces-config.xml (added)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/b-faces-config.xml Fri Mar 28 14:26:41 2014
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<!--
+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.
+ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
+ version="2.0">
+ <ordering>
+ <before>
+ <others/>
+ </before>
+ </ordering>
+ <lifecycle>
+ <phase-listener>org.apache.myfaces.lifecycle.DummyPhaseListenerB</phase-listener>
+ </lifecycle>
+</faces-config>
Copied: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/dummy.xhtml (from r1582218, myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/redirect1.xhtml)
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/dummy.xhtml?p2=myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/dummy.xhtml&p1=myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/redirect1.xhtml&r1=1582218&r2=1582760&rev=1582760&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/redirect1.xhtml (original)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/lifecycle/dummy.xhtml Fri Mar 28 14:26:41 2014
@@ -23,7 +23,7 @@
</head>
<body>
<form jsf:id="mainForm">
- <h:commandButton id="submit" value="Submit" action="redirect1_1?faces-redirect=true"/>
+ <h:commandButton id="submit" value="Submit"/>
</form>
</body>
</html>