List of usage examples for org.springframework.mock.web MockHttpServletRequest setRequestURI
public void setRequestURI(@Nullable String requestURI)
From source file:org.wallride.service.PostService.java
/** * * @param blogLanguage//from w w w .ja va 2s. com * @param type * @param maxRank * @see PostService#getPopularPosts(String, PopularPost.Type) */ @CacheEvict(value = WallRideCacheConfiguration.POPULAR_POST_CACHE, key = "'list.type.' + #blogLanguage.language + '.' + #type") public void updatePopularPosts(BlogLanguage blogLanguage, PopularPost.Type type, int maxRank) { logger.info("Start update of the popular posts"); GoogleAnalytics googleAnalytics = blogLanguage.getBlog().getGoogleAnalytics(); if (googleAnalytics == null) { logger.info("Configuration of Google Analytics can not be found"); return; } Analytics analytics = GoogleAnalyticsUtils.buildClient(googleAnalytics); WebApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext, "org.springframework.web.servlet.FrameworkServlet.CONTEXT.guestServlet"); if (context == null) { logger.info("GuestServlet is not ready yet"); return; } final RequestMappingHandlerMapping mapping = context.getBean(RequestMappingHandlerMapping.class); Map<Post, Long> posts = new LinkedHashMap<>(); int startIndex = 1; int currentRetry = 0; int totalResults = 0; do { try { LocalDate now = LocalDate.now(); LocalDate startDate; switch (type) { case DAILY: startDate = now.minusDays(1); break; case WEEKLY: startDate = now.minusWeeks(1); break; case MONTHLY: startDate = now.minusMonths(1); break; default: throw new ServiceException(); } DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); Analytics.Data.Ga.Get get = analytics.data().ga() .get(googleAnalytics.getProfileId(), startDate.format(dateTimeFormatter), now.format(dateTimeFormatter), "ga:sessions") .setDimensions(String.format("ga:pagePath", googleAnalytics.getCustomDimensionIndex())) .setSort(String.format("-ga:sessions", googleAnalytics.getCustomDimensionIndex())) .setStartIndex(startIndex).setMaxResults(GoogleAnalyticsUtils.MAX_RESULTS); if (blogLanguage.getBlog().isMultiLanguage()) { get.setFilters("ga:pagePath=~/" + blogLanguage.getLanguage() + "/"); } logger.info(get.toString()); final GaData gaData = get.execute(); if (CollectionUtils.isEmpty(gaData.getRows())) { break; } for (List row : gaData.getRows()) { UriComponents uriComponents = UriComponentsBuilder.fromUriString((String) row.get(0)).build(); MockHttpServletRequest request = new MockHttpServletRequest(servletContext); request.setRequestURI(uriComponents.getPath()); request.setQueryString(uriComponents.getQuery()); MockHttpServletResponse response = new MockHttpServletResponse(); BlogLanguageRewriteRule rewriteRule = new BlogLanguageRewriteRule(blogService); BlogLanguageRewriteMatch rewriteMatch = (BlogLanguageRewriteMatch) rewriteRule.matches(request, response); try { rewriteMatch.execute(request, response); } catch (ServletException e) { throw new ServiceException(e); } catch (IOException e) { throw new ServiceException(e); } request.setRequestURI(rewriteMatch.getMatchingUrl()); HandlerExecutionChain handler; try { handler = mapping.getHandler(request); } catch (Exception e) { throw new ServiceException(e); } if (!(handler.getHandler() instanceof HandlerMethod)) { continue; } HandlerMethod method = (HandlerMethod) handler.getHandler(); if (!method.getBeanType().equals(ArticleDescribeController.class) && !method.getBeanType().equals(PageDescribeController.class)) { continue; } // Last path mean code of post String code = uriComponents.getPathSegments().get(uriComponents.getPathSegments().size() - 1); Post post = postRepository.findOneByCodeAndLanguage(code, rewriteMatch.getBlogLanguage().getLanguage()); if (post == null) { logger.debug("Post not found [{}]", code); continue; } if (!posts.containsKey(post)) { posts.put(post, Long.parseLong((String) row.get(1))); } if (posts.size() >= maxRank) { break; } } if (posts.size() >= maxRank) { break; } startIndex += GoogleAnalyticsUtils.MAX_RESULTS; totalResults = gaData.getTotalResults(); } catch (IOException e) { logger.warn("Failed to synchronize with Google Analytics", e); if (currentRetry >= GoogleAnalyticsUtils.MAX_RETRY) { throw new GoogleAnalyticsException(e); } currentRetry++; logger.info("{} ms to sleep...", GoogleAnalyticsUtils.RETRY_INTERVAL); try { Thread.sleep(GoogleAnalyticsUtils.RETRY_INTERVAL); } catch (InterruptedException ie) { throw new GoogleAnalyticsException(e); } logger.info("Retry for the {} time", currentRetry); } } while (startIndex <= totalResults); popularPostRepository.deleteByType(blogLanguage.getLanguage(), type); int rank = 1; for (Map.Entry<Post, Long> entry : posts.entrySet()) { PopularPost popularPost = new PopularPost(); popularPost.setLanguage(blogLanguage.getLanguage()); popularPost.setType(type); popularPost.setRank(rank); popularPost.setViews(entry.getValue()); popularPost.setPost(entry.getKey()); popularPostRepository.saveAndFlush(popularPost); rank++; } logger.info("Complete the update of popular posts"); }
From source file:org.hdiv.filter.ValidatorHelperTest.java
/** * Validation test for an init action./*w w w . ja va 2 s .c o m*/ */ public void testValidateHashActionIsStartPage() { MockHttpServletRequest request = (MockHttpServletRequest) HDIVUtil.getHttpServletRequest(); this.dataComposer.beginRequest(this.targetName); request.setRequestURI("/testing.do"); String pageState = this.dataComposer.endRequest(); this.dataComposer.endPage(); request.addParameter(hdivParameter, pageState); RequestWrapper requestWrapper = new RequestWrapper(request); assertTrue(helper.validate(requestWrapper).isValid()); }
From source file:com.enonic.cms.business.portal.instruction.PostProcessInstructionExecutorImplTest.java
private MockHttpServletRequest setUpMockRequest(String serverName) { MockHttpServletRequest request = new MockHttpServletRequest(); request.setServerName(serverName);/*from ww w .j a v a 2 s .c o m*/ request.setRequestURI("/site/0/"); return request; }
From source file:org.jasig.cas.client.authentication.AuthenticationFilterTests.java
@Test public void testRedirectWithQueryString() throws Exception { final MockHttpSession session = new MockHttpSession(); final MockHttpServletRequest request = new MockHttpServletRequest(); final MockHttpServletResponse response = new MockHttpServletResponse(); request.setQueryString("test=12456"); request.setRequestURI("/test"); request.setSecure(true);//from w ww.j av a 2 s . c om final FilterChain filterChain = new FilterChain() { public void doFilter(ServletRequest request, ServletResponse response) throws IOException, ServletException { // nothing to do } }; request.setSession(session); this.filter = new AuthenticationFilter(); final MockFilterConfig config = new MockFilterConfig(); config.addInitParameter("casServerLoginUrl", CAS_LOGIN_URL); config.addInitParameter("serverName", "localhost:8443"); this.filter.init(config); this.filter.doFilter(request, response, filterChain); assertEquals(CAS_LOGIN_URL + "?service=" + URLEncoder.encode( "https://localhost:8443" + request.getRequestURI() + "?" + request.getQueryString(), "UTF-8"), response.getRedirectedUrl()); }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show all customers.//from w w w. ja v a2s.c o m */ @Test public void testListCustomers() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers"); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertEquals(5, customers.size()); } catch (Exception ex) { fail(); } }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show customers started from lastname, result success. *//*from ww w .jav a 2 s . c om*/ @Test public void testListCustomersByLastNameSuccess() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers/last"); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertEquals(5, customers.size()); } catch (Exception ex) { fail(); } }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show customers by lastname, result failure. */// w ww. j av a 2 s .c o m @Test public void testListCustomersByLastNameFailure() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers/first"); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertTrue(customers.isEmpty()); } catch (Exception ex) { fail(); } }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show customers by lastname, result success. *//*w w w. ja va2 s. c o m*/ @Test public void testFindCustomerByLastNameSuccess() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers/lastname2"); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertEquals(1, customers.size()); } catch (Exception ex) { fail(); } }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show customers started from firstname, result success. *///from ww w. j ava 2s. c o m @Test public void testListCustomersByFirstNameSuccess() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers"); request.setParameter("firstName", "first"); request.setParameter("lastName", ""); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertEquals(5, customers.size()); } catch (Exception ex) { fail(); } }
From source file:git.irbis.spring3.controllerusageexample.customers.web.ListCustomersControllerTest.java
/** * Test of request: show customer by fistname, result success. */// w w w. j av a 2 s .c om @Test public void testFindCustomerByFirstNameSuccess() { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); ListCustomersController listCustomersController = new ListCustomersController( new CustomerRepositoryMockImpl()); request.setMethod("GET"); request.setRequestURI("/listcustomers"); request.setParameter("firstName", "firstname1"); request.setParameter("lastName", ""); try { ModelAndView mv = new AnnotationMethodHandlerAdapter().handle(request, response, listCustomersController); ModelAndViewAssert.assertViewName(mv, "listcustomers"); List<Customer> customers = (List<Customer>) mv.getModel().get("customers"); assertNotNull(customers); assertEquals(1, customers.size()); } catch (Exception ex) { fail(); } }