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());
}