struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gundersen, Richard" <Richard.Gunder...@london-scottish.com>
Subject RE: Unit Testing Advice
Date Thu, 06 Nov 2008 12:53:03 GMT
This is what I have so far. It works but I would appreciate a little
peer review (particularly regarding how I set up my session and the
logged in user)

Thanks!

************************************************

@Resource
private CardPaymentAction cardPaymentAction;
	
    ActionContext actionContext;
    ServletActionContext servletActionContext;
    private HttpServletRequest request;
    private HttpServletResponse response;
    private MockServletContext servletContext;
	
	public CardPaymentActionTest() {}
	
	@Test
	public void testPayment() {			
		setupContext();		
		
		// Mastercard payment which requires authentication
		CustomerPaymentDetails details = new
CustomerPaymentDetails();
		details.setAccountNumber("955784322");	
		
		cardPaymentAction.setCustomerPaymentDetails(details);
		String result = cardPaymentAction.makePayment();
	
assertTrue(BaseAction.Results.ACS_HANDLER.equals(result));	
	}
	
	/**
	 * Setup the context (request, session etc) for our action tests
	 * (Move to setUp() when I figure out why it's not being
executed)
	 */
	private void setupContext() {
        Map extraContext = new HashMap();

        request = new MockHttpServletRequest();
        response = new MockHttpServletResponse();
        servletContext = new MockServletContext();
        extraContext.put(HTTP_REQUEST, request);
        extraContext.put(HTTP_RESPONSE, response);
        extraContext.put(SERVLET_CONTEXT, servletContext);
        Map session = new
org.apache.struts2.dispatcher.SessionMap(request);
        session.put("profile", createCustomer());  // fake a logged in
user
        extraContext.put("session", session);        

        actionContext = new ActionContext(extraContext);
        ServletActionContext.setContext(actionContext);		
	}

As a responsible corporate citizen, London Scottish Bank plc asks you to consider the environment
before printing this email.

*** Disclaimer *** 

This electronic communication is confidential and for the exclusive use of the addressee.
It may contain private and confidential information. The information, attachments and opinions
contained in this E-mail are those of its author only and do not necessarily represent those
of London Scottish Bank PLC or any other members of the London Scottish Group. 

If you are not the intended addressee, you are prohibited from any disclosure, distribution
or further copying or use of this communication or the information in it or taking any action
in reliance on it. If you have received this communication in error please notify the Information
Security Manager at ISM@London-Scottish.com as soon as possible and delete the message from
all places in your computer where it is stored. 

We utilise virus scanning software but we cannot guarantee the security of electronic communications
and you are advised to check any attachments for viruses. We do not accept liability for any
loss resulting from any corruption or alteration of data or importation of any virus as a
result of receiving this electronic communication. 

Replies to this E-mail may be monitored for operational or business reasons. London Scottish
Bank PLC is authorised and regulated by the Financial Services Authority.


London Scottish Bank plc, Registered Office: 201 Deansgate, Manchester M3 3NW Registered Number
973008 England.

Subsidiary Companies:-

London Scottish Finance Limited, Registered Office: 201 Deansgate, Manchester M3 3NW Registered
Number 233259 England.

London Scottish Broking Limited, Registered Office: 201 Deansgate, Manchester M3 3NW Registered
Number 230110 England.

Robinson Way & Company Limited, Registered Office: 201 Deansgate, Manchester M3 3NW Registered
Number 885896 England.

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message