package com.pugh.sockso.web.action; import com.pugh.sockso.web.User; import com.pugh.sockso.tests.TestLocale; import junit.framework.TestCase; public class AdminActionTest extends TestCase { private MyAdminAction action; public void setUp() { action = new MyAdminAction(); action.setLocale( new TestLocale() ); } class MyAdminAction extends AdminAction { public boolean requestHandled = false; public void handleAdminRequest() { requestHandled = true; } } public void testAdminActionRequiresLogin() { assertTrue( action.requiresLogin() ); } public void testHandleRequestThrowsBadRequestExceptionWhenCurrentUserIsNotAdmin() { action.setUser(new User( 1, "foo", "foo@bar.com", false )); try { action.handleRequest(); fail( "Expected exception to be thrown when user is not an admin" ); } catch ( final Exception e ) {} } public void testHandleAdminRequestCalledWhenCurrentUserIsAnAdmin() throws Exception { action.setUser(new User( 1, "foo", "foo@bar.com", true )); action.handleRequest(); assertTrue( action.requestHandled ); } }