### Question:
MobileSitePathUrlFactory extends AbstractSitePathUrlFactory implements SiteUrlFactory { public boolean isRequestForSite(HttpServletRequest request) { return request.getRequestURI().startsWith(this.getFullMobilePath()) || request.getRequestURI().equals(this.getCleanMobilePath()); } MobileSitePathUrlFactory(final String mobilePath, final String tabletPath);  MobileSitePathUrlFactory(final String mobilePath, final String tabletPath, final String rootPath); boolean isRequestForSite(HttpServletRequest request); String createSiteUrl(HttpServletRequest request);  }### Answer:
@Test public void isRequestForRootSite() { request.setRequestURI("/mobile/"); assertTrue(basicRootFactory.isRequestForSite(request)); }
@Test public void isRequestForPathSite() { request.setRequestURI("/showcase/mobile/"); assertTrue(basicPathFactory.isRequestForSite(request)); }
@Test public void notRequestForRootSite() { request.setRequestURI("/"); assertFalse(basicRootFactory.isRequestForSite(request)); }
@Test public void notRequestForPathSite() { request.setRequestURI("/showcase/"); assertFalse(basicPathFactory.isRequestForSite(request)); }
@Test public void notRequestForRootSiteWithPath() { request.setRequestURI("/marvelous/"); assertFalse(basicRootFactory.isRequestForSite(request)); }
@Test public void notRequestForPathSiteWithPath() { request.setRequestURI("/showcase/marvelous/"); assertFalse(basicPathFactory.isRequestForSite(request)); }