Author: ajaquith
Date: Mon Aug 11 21:57:35 2008
New Revision: 685039

URL: http://svn.apache.org/viewvc?rev=685039&view=rev
Log:
Refactored TestEngine so that MockRountrips and other heavier sessions are 
lazily initialized. Also added a property to AuthenticationManager that allows 
login throttling to be switched off (for example, during unit tests). The 
effect of these two changes cuts unit test times [on my machine] from 25 
minutes down to about 4.5.

Modified:
    
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/workflow/ApprovalWorkflowTest.java

Modified: 
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/workflow/ApprovalWorkflowTest.java
URL: 
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/workflow/ApprovalWorkflowTest.java?rev=685039&r1=685038&r2=685039&view=diff
==============================================================================
--- 
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/workflow/ApprovalWorkflowTest.java
 (original)
+++ 
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/workflow/ApprovalWorkflowTest.java
 Mon Aug 11 21:57:35 2008
@@ -19,8 +19,6 @@
     TestEngine m_engine;
     WorkflowManager m_wm;
     DecisionQueue m_dq;
-    WikiSession m_adminSession;
-    WikiSession m_janneSession;
 
 
     protected void setUp() throws Exception
@@ -36,8 +34,6 @@
         // Start the wiki engine
         m_engine = new TestEngine(props);
         m_wm = m_engine.getWorkflowManager();
-        m_adminSession = m_engine.adminSession();
-        m_janneSession = m_engine.janneSession();
         m_dq = m_wm.getDecisionQueue();
         m_builder = WorkflowBuilder.getBuilder( m_engine );
     }
@@ -178,14 +174,14 @@
         assertFalse( m_engine.pageExists(pageName));
 
         // Second, GroupPrincipal Admin should see a Decision in its queue
-        Collection decisions = m_dq.getActorDecisions(m_adminSession);
+        Collection decisions = m_dq.getActorDecisions( m_engine.adminSession() 
);
         assertEquals(1, decisions.size());
 
-        // Now, approve the decision and it should go away, and page should 
apppear.
+        // Now, approve the decision and it should go away, and page should 
appear.
         Decision decision = (Decision)decisions.iterator().next();
         decision.decide(Outcome.DECISION_APPROVE);
         assertTrue( m_engine.pageExists(pageName));
-        decisions = m_dq.getActorDecisions(m_adminSession);
+        decisions = m_dq.getActorDecisions( m_engine.adminSession() );
         assertEquals(0, decisions.size());
 
         // Delete the page we created
@@ -210,7 +206,7 @@
         assertFalse( m_engine.pageExists(pageName));
 
         // ...and there should be a Decision in GroupPrincipal Admin's queue
-        Collection decisions = m_dq.getActorDecisions(m_adminSession);
+        Collection decisions = m_dq.getActorDecisions( m_engine.adminSession() 
);
         assertEquals(1, decisions.size());
 
         // Now, DENY the decision and the page should still not exist...
@@ -219,14 +215,14 @@
         assertFalse( m_engine.pageExists(pageName) );
 
         // ...but there should also be a notification decision in Janne's queue
-        decisions = m_dq.getActorDecisions(m_janneSession);
+        decisions = m_dq.getActorDecisions( m_engine.janneSession() );
         assertEquals(1, decisions.size());
         decision = (Decision)decisions.iterator().next();
         assertEquals(PageManager.SAVE_REJECT_MESSAGE_KEY, 
decision.getMessageKey());
 
         // Once Janne disposes of the notification, his queue should be empty
         decision.decide(Outcome.DECISION_ACKNOWLEDGE);
-        decisions = m_dq.getActorDecisions(m_janneSession);
+        decisions = m_dq.getActorDecisions( m_engine.janneSession() );
         assertEquals(0, decisions.size());
     }
 


Reply via email to