StepRequest { public ControllerCacheKey getCacheKey() { final String methodKey; final StringBuilder cacheKeyBuffer = new StringBuilder(this.controllerName.length() + this.methodName.length()); cacheKeyBuffer.append(this.controllerName); cacheKeyBuffer.append(this.methodName); cacheKeyBuffer.append(this.args.length); methodKey = cacheKeyBuffer.toString(); return new ControllerCacheKey(methodKey, this.requestURI); } StepRequest(final String requestURI, final String controllerName, final String methodName,
            final String[] args);  StepRequest(final HttpServletRequest request, final String encoding); ControllerCacheKey getCacheKey(); String getControllerName(); String getMethodName(); String[] getArgs(); @Override String toString(); boolean isExternal();  }
@Test public void testMethodKey() { final StepRequest stepRequest = getTestStepRequest(); final String methodKey = stepRequest.getCacheKey().getMethodKey(); assertTrue(methodKey.contains(TEST_CONTROLLER_NAME)); assertTrue(methodKey.contains(TEST_METHOD_NAME)); for (final String s : TEST_ARGS) { assertFalse(methodKey.contains(s)); } }
@Test public void testResultKey() { final StepRequest stepRequest = getTestStepRequest(); final String resultsKey = stepRequest.getCacheKey().getResultsKey(); assertTrue(resultsKey.contains(TEST_CONTROLLER_NAME)); assertTrue(resultsKey.contains(TEST_METHOD_NAME)); for (final String s : TEST_ARGS) { assertTrue(resultsKey.contains(s)); } }