View Javadoc
1 /* 2 * Angkor Web Framework 3 * 4 * Distributable under LGPL license. 5 * See terms of license at gnu.org. 6 */ 7 8 package com.tirsen.angkor.test.unit; 9 10 import com.tirsen.angkor.process.*; 11 import com.tirsen.angkor.Application; 12 import com.tirsen.angkor.test.unit.mock.MockRenderContext; 13 14 import java.util.Collections; 15 16 /*** 17 * A utility class for unit tests which is simulating things happening on the pipeline. 18 * Since most things is happening directly or indirectly on the pipeline in Angkor this would 19 * probably include most unit tests of Angkor. 20 * 21 * <!-- $Id: MockPipeline.java,v 1.3 2002/10/13 13:37:26 tirsen Exp $ --> 22 * <!-- $Author: tirsen $ --> 23 * 24 * @author Jon Tirs´n (tirsen@users.sourceforge.net) 25 * @version $Revision: 1.3 $ 26 */ 27 public class MockPipeline extends Pipeline 28 { 29 private MockRenderContext context; 30 31 /*** 32 * Setup the execution context to simulate we're running on the pipeline. 33 */ 34 public void start() throws Exception 35 { 36 ExecuteContext context = createExecuteContext(getRenderContext()); 37 setCurrentExecuteContext(context); 38 } 39 40 /*** 41 * Execute the event-processing part of the event-valve. 42 */ 43 public void processEvents() throws Exception 44 { 45 EventValve events = new EventValve(); 46 // create an "empty" execute context 47 ExecuteContext exec = new BasicExecuteContext(Collections.EMPTY_LIST.iterator()); 48 initContext(exec, getRenderContext()); 49 events.execute(exec); 50 } 51 52 /*** 53 * Tear down the execution context to simulate so we're running outside the pipeline. 54 */ 55 public void end() 56 { 57 setCurrentExecuteContext(null); 58 } 59 60 public MockRenderContext getRenderContext() 61 { 62 if(context == null) 63 { 64 context = new MockRenderContext(); 65 } 66 return context; 67 } 68 69 public void setApplication(Application application) 70 { 71 getRenderContext().setApplication(application); 72 } 73 }

This page was automatically generated by Maven