You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shale.apache.org by cr...@apache.org on 2006/10/18 19:59:01 UTC

svn commit: r465318 - in /shale/framework/trunk/shale-apps/shale-test-tiger/src: main/java/org/apache/shale/examples/test/tiger/ main/webapp/ main/webapp/WEB-INF/ test/java/org/apache/shale/examples/test/tiger/systest/

Author: craigmcc
Date: Wed Oct 18 10:58:58 2006
New Revision: 465318

URL: http://svn.apache.org/viewvc?view=rev&rev=465318
Log:
Add a test case for lifecycle navigation events similar to the one just added
to shale-test-view, but this time using annotated view controllers to test
the corresponding Tiger functionality.

SHALE-307

Added:
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle1.java
      - copied, changed from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle1.java
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle2.java
      - copied, changed from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle2.java
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Recorder.java
      - copied, changed from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Recorder.java
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/lifecycle1.jsp
      - copied unchanged from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/webapp/lifecycle1.jsp
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/lifecycle2.jsp
      - copied unchanged from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/webapp/lifecycle2.jsp
Modified:
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/WEB-INF/faces-config.xml
    shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/menu.jsp
    shale/framework/trunk/shale-apps/shale-test-tiger/src/test/java/org/apache/shale/examples/test/tiger/systest/IntegrationTestCase.java

Copied: shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle1.java (from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle1.java)
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle1.java?view=diff&rev=465318&p1=shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle1.java&r1=465311&p2=shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle1.java&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle1.java (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle1.java Wed Oct 18 10:58:58 2006
@@ -17,20 +17,29 @@
  * $Id: Standard.java 464373 2006-10-16 04:21:54Z rahul $
  */
 
-package org.apache.shale.examples.test.view;
+package org.apache.shale.examples.test.tiger;
 
-import org.apache.shale.view.AbstractViewController;
+import org.apache.shale.tiger.managed.Bean;
+import org.apache.shale.tiger.managed.Property;
+import org.apache.shale.tiger.managed.Scope;
+import org.apache.shale.tiger.view.Destroy;
+import org.apache.shale.tiger.view.Init;
+import org.apache.shale.tiger.view.Preprocess;
+import org.apache.shale.tiger.view.Prerender;
+import org.apache.shale.tiger.view.View;
 
 /**
  * <p>First page for lifecycle event tests.</p>
  */
-public class Lifecycle1 extends AbstractViewController {
+@Bean(name="lifecycle1", scope=Scope.REQUEST) @View
+public class Lifecycle1 {
     
 
     // -------------------------------------------------------------- Properties
 
 
     // The "Recorder" object for this request
+    @Property(value="#{recorder}")
     private Recorder recorder = null;
     public Recorder getRecorder() {
         return this.recorder;
@@ -46,6 +55,7 @@
     /**
      * <p>Record an init event.</p>
      */
+    @Init
     public void init() {
         getRecorder().record("init1");
     }
@@ -54,6 +64,7 @@
     /**
      * <p>Record a preprocess event.</p>
      */
+    @Preprocess
     public void preprocess() {
         getRecorder().record("preprocess1");
     }
@@ -62,6 +73,7 @@
     /**
      * <p>Record a prerender event.</p>
      */
+    @Prerender
     public void prerender() {
         getRecorder().record("prerender1");
     }
@@ -70,6 +82,7 @@
     /**
      * <p>Record a destroy event.</p>
      */
+    @Destroy
     public void destroy() {
         getRecorder().record("destroy1");
     }

Copied: shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle2.java (from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle2.java)
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle2.java?view=diff&rev=465318&p1=shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle2.java&r1=465311&p2=shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle2.java&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Lifecycle2.java (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Lifecycle2.java Wed Oct 18 10:58:58 2006
@@ -17,20 +17,29 @@
  * $Id: Standard.java 464373 2006-10-16 04:21:54Z rahul $
  */
 
-package org.apache.shale.examples.test.view;
+package org.apache.shale.examples.test.tiger;
 
-import org.apache.shale.view.AbstractViewController;
+import org.apache.shale.tiger.managed.Bean;
+import org.apache.shale.tiger.managed.Property;
+import org.apache.shale.tiger.managed.Scope;
+import org.apache.shale.tiger.view.Destroy;
+import org.apache.shale.tiger.view.Init;
+import org.apache.shale.tiger.view.Preprocess;
+import org.apache.shale.tiger.view.Prerender;
+import org.apache.shale.tiger.view.View;
 
 /**
  * <p>Second page for lifecycle event tests.</p>
  */
-public class Lifecycle2 extends AbstractViewController {
+@Bean(name="lifecycle2", scope=Scope.REQUEST) @View
+public class Lifecycle2 {
     
 
     // -------------------------------------------------------------- Properties
 
 
     // The "Recorder" object for this request
+    @Property(value="#{recorder}")
     private Recorder recorder = null;
     public Recorder getRecorder() {
         return this.recorder;
@@ -46,6 +55,7 @@
     /**
      * <p>Record an init event.</p>
      */
+    @Init
     public void init() {
         getRecorder().record("init2");
     }
@@ -54,6 +64,7 @@
     /**
      * <p>Record a preprocess event.</p>
      */
+    @Preprocess
     public void preprocess() {
         getRecorder().record("preprocess2");
     }
@@ -62,6 +73,7 @@
     /**
      * <p>Record a prerender event.</p>
      */
+    @Prerender
     public void prerender() {
         getRecorder().record("prerender2");
     }
@@ -70,6 +82,7 @@
     /**
      * <p>Record a destroy event.</p>
      */
+    @Destroy
     public void destroy() {
         getRecorder().record("destroy2");
     }

Copied: shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Recorder.java (from r465311, shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Recorder.java)
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Recorder.java?view=diff&rev=465318&p1=shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Recorder.java&r1=465311&p2=shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Recorder.java&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-view/src/main/java/org/apache/shale/examples/test/view/Recorder.java (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/main/java/org/apache/shale/examples/test/tiger/Recorder.java Wed Oct 18 10:58:58 2006
@@ -17,11 +17,15 @@
  * $Id: Standard.java 464373 2006-10-16 04:21:54Z rahul $
  */
 
-package org.apache.shale.examples.test.view;
+package org.apache.shale.examples.test.tiger;
+
+import org.apache.shale.tiger.managed.Bean;
+import org.apache.shale.tiger.managed.Scope;
 
 /**
  * <p>Simple bean to record and play back event messages.</p>
  */
+@Bean(name="recorder", scope=Scope.REQUEST)
 public class Recorder {
     
 

Modified: shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/WEB-INF/faces-config.xml
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/WEB-INF/faces-config.xml?view=diff&rev=465318&r1=465317&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/WEB-INF/faces-config.xml (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/WEB-INF/faces-config.xml Wed Oct 18 10:58:58 2006
@@ -36,6 +36,10 @@
             <to-view-id>/annotated.jsp</to-view-id>
         </navigation-case>
         <navigation-case>
+            <from-outcome>lifecycle2</from-outcome>
+            <to-view-id>/lifecycle2.jsp</to-view-id>
+        </navigation-case>
+        <navigation-case>
             <from-outcome>managed</from-outcome>
             <to-view-id>/managed.jsp</to-view-id>
         </navigation-case>
@@ -65,8 +69,18 @@
         <managed-bean-scope>request</managed-bean-scope>
     </managed-bean>
 
+    <!-- Bean "lifecycle1" is declared with annotations -->
+
+    <!-- Bean "lifecycle2" is declared with annotations -->
+
     <!-- Bean "managed" is declared with annotations -->
 
+    <!-- Bean "recorder" is declared with annotations -->
+
+    <!-- Bean "requestBean" is declared with annotations -->
+
+    <!-- Bean "sessionBean" is declared with annotations -->
+
     <managed-bean>
         <managed-bean-name>standard</managed-bean-name>
         <managed-bean-class>
@@ -74,10 +88,6 @@
         </managed-bean-class>
         <managed-bean-scope>request</managed-bean-scope>
     </managed-bean>
-
-    <!-- Bean "requestBean" is declared with annotations -->
-
-    <!-- Bean "sessionBean" is declared with annotations -->
 
     <managed-bean>
         <managed-bean-name>status</managed-bean-name>

Modified: shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/menu.jsp
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/menu.jsp?view=diff&rev=465318&r1=465317&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/menu.jsp (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/main/webapp/menu.jsp Wed Oct 18 10:58:58 2006
@@ -34,6 +34,7 @@
     <ul>
         <li><a href="managed.faces">Annotated ViewController and Managed Beans</a></li>
         <li><a href="annotated.faces">Annotated ViewController Lifecycle Events</a></li>
+        <li><a href="lifecycle1.faces">Lifecyle Navigation Events</a></li>
         <li><a href="standard.faces">Standard ViewController Lifecycle Events</a></li>
         <li><a href="status.faces">Static Status Information</a></li>
     </ul>

Modified: shale/framework/trunk/shale-apps/shale-test-tiger/src/test/java/org/apache/shale/examples/test/tiger/systest/IntegrationTestCase.java
URL: http://svn.apache.org/viewvc/shale/framework/trunk/shale-apps/shale-test-tiger/src/test/java/org/apache/shale/examples/test/tiger/systest/IntegrationTestCase.java?view=diff&rev=465318&r1=465317&r2=465318
==============================================================================
--- shale/framework/trunk/shale-apps/shale-test-tiger/src/test/java/org/apache/shale/examples/test/tiger/systest/IntegrationTestCase.java (original)
+++ shale/framework/trunk/shale-apps/shale-test-tiger/src/test/java/org/apache/shale/examples/test/tiger/systest/IntegrationTestCase.java Wed Oct 18 10:58:58 2006
@@ -137,6 +137,36 @@
     }
 
 
+    // Test /lifecycle1.jsp and /lifecycle2.jsp
+    public void testLifecycle() throws Exception {
+
+        HtmlElement element;
+        page("/lifecycle1.faces");
+        assertEquals("Lifecycle Navigation Test (Page 1)", title());
+
+        // Validate values for initial non-postback call
+        
+        element = element("recorderEvents");
+        assertNotNull(element);
+        assertEquals("init1/prerender1/", element.asText());
+
+        // Click the navigate hyperlink
+
+        HtmlAnchor anchor = (HtmlAnchor) element("form:navigate");
+        assertNotNull(anchor);
+        link(anchor);
+
+        // Validate values for subsequent postback call
+        
+        assertEquals("Lifecycle Navigation Test (Page 2)", title());
+
+        element = element("recorderEvents");
+        assertNotNull(element);
+        assertEquals("init1/preprocess1/init2/prerender2/", element.asText());
+
+    }
+
+
     // Test /managed.jsp
     public void testManaged() throws Exception {