/src/test/java/com/atlassian/util/profiling/filters/TestProfilingStatusViaRequestUpdateStrategy.java
Java | 83 lines | 69 code | 14 blank | 0 comment | 0 complexity | 29cc5a6c6338b7d12d1b376d8dc628bf MD5 | raw file
- package com.atlassian.util.profiling.filters;
- import javax.servlet.FilterConfig;
- import javax.servlet.ServletRequest;
- import javax.servlet.http.HttpServletRequest;
- import com.atlassian.util.profiling.UtilTimerStack;
- import com.mockobjects.dynamic.Mock;
- import junit.framework.TestCase;
- import static com.atlassian.util.profiling.UtilTimerStack.getDefaultStrategy;
- public class TestProfilingStatusViaRequestUpdateStrategy extends TestCase
- {
- private final Mock request = new Mock(HttpServletRequest.class);
- private Mock mockFilterConfig = new Mock(FilterConfig.class);
- private FilterConfig filterConfig = (FilterConfig) mockFilterConfig.proxy();
- private ProfilingStatusUpdateViaRequestStrategy defaultStrategy;
- public void setUp() throws Exception
- {
- super.setUp();
- setDefaultStrategy();
- }
- public void tearDown() throws Exception
- {
- getDefaultStrategy().setEnabled(false);
- super.tearDown();
- }
- public void setDefaultStrategy()
- {
- mockFilterConfig.expectAndReturn("getFilterName", "profiling");
- defaultStrategy = new ProfilingStatusUpdateViaRequestStrategy()
- {
- public FilterConfig getFilterConfig()
- {
- return filterConfig;
- }
- };
- }
- public void testTurnOnProfiling()
- {
- request.expectAndReturn("getQueryString", "profile.filter=on&spaceKey=TST");
- defaultStrategy.setStateViaRequest((ServletRequest) request.proxy());
- assertTrue(UtilTimerStack.isActive());
- }
- public void testTurnOnProfilingWithThreshhold()
- {
- request.expectAndReturn("getQueryString", "pageId=10000&profile.filter=20&spaceKey=TST");
- defaultStrategy.setStateViaRequest((ServletRequest) request.proxy());
- assertTrue(UtilTimerStack.isActive());
- }
- public void testTurnOffProfiling()
- {
- request.expectAndReturn("getQueryString", "pageId=10000&profile.filter=off");
- defaultStrategy.setStateViaRequest((ServletRequest) request.proxy());
- assertFalse(UtilTimerStack.isActive());
- }
- public void testIgnoreAcivation()
- {
- getDefaultStrategy().setEnabled(true);
- request.expectAndReturn("getQueryString", null);
- defaultStrategy.setStateViaRequest((ServletRequest) request.proxy());
- assertTrue(UtilTimerStack.isActive());
- }
- public void testChangeInitParam()
- {
- mockFilterConfig.expectAndReturn("getInitParameter", ProfilingStatusUpdateViaRequestStrategy.ON_OFF_INIT_PARAM, "profile");
- mockFilterConfig.expectAndReturn("getInitParameter", ProfilingStatusUpdateViaRequestStrategy.ON_OFF_INIT_PARAM, "profile");
- mockFilterConfig.expectAndReturn("getInitParameter", ProfilingStatusUpdateViaRequestStrategy.ON_OFF_INIT_PARAM, "profile");
- defaultStrategy.configure(filterConfig);
- assertEquals("profile=([\\w\\d]+)", ProfilingStatusUpdateViaRequestStrategy.getOnOffParameterPattern().pattern());
- }
- }