package br.gov.servicos.frontend; import lombok.experimental.FieldDefaults; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.runners.MockitoJUnitRunner; import org.springframework.mock.web.MockHttpServletRequest; import static java.util.Arrays.asList; import static lombok.AccessLevel.PRIVATE; import static org.hamcrest.Matchers.stringContainsInOrder; import static org.junit.Assert.assertThat; @FieldDefaults(level = PRIVATE) @RunWith(MockitoJUnitRunner.class) public class RobotsTxtControllerTest { RobotsTxtController controller; MockHttpServletRequest request = new MockHttpServletRequest(); @Before public void setUp() throws Exception { controller = new RobotsTxtController(); request.setScheme("http"); request.setServerName("servicos.gov.br"); request.setRequestURI("/robots.txt"); } @Test public void devePermitirRobosComAFlagLigada() throws Exception { assertThat(controller.robotsTxt(request, true), stringContainsInOrder(asList("Sitemap", "http://servicos.gov.br/sitemap.xml", "User-agent", "*", "Disallow:"))); } @Test public void deveBanirRobosComAFlagDesligada() throws Exception { assertThat(controller.robotsTxt(request, false), stringContainsInOrder(asList("User-agent", "*", "Disallow: /"))); } }