Package sagan.guides.support

Source Code of sagan.guides.support.GuideIndexIntegrationTests

package sagan.guides.support;

import sagan.support.Fixtures;
import saganx.AbstractIntegrationTests;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.junit.Assert;
import org.junit.Test;

import org.springframework.test.web.servlet.MvcResult;

import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.equalTo;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

public class GuideIndexIntegrationTests extends AbstractIntegrationTests {

    @Test
    public void showGuidesIndex() throws Exception {
        stubRestClient.putResponse("/orgs/spring-guides/repos", Fixtures.githubRepoListJson());

        MvcResult response = mockMvc.perform(get("/guides"))
                .andExpect(status().isOk())
                .andExpect(content().contentTypeCompatibleWith("text/html"))
                .andReturn();

        Document html = Jsoup.parse(response.getResponse().getContentAsString());
        assertThat(html.select("ul li.active").text(), equalTo("Guides"));
        Assert.assertThat(html.text(), containsString("Building a RESTful Web Service"));
        Assert.assertThat(html.text(), containsString("Learn how to create a RESTful web service with Spring"));
        Assert.assertThat(html.text(), containsString("Designing and Implementing RESTful Web Services with Spring"));
        Assert.assertThat(html.text(),
                containsString("Learn how to design and implement RESTful web services with Spring"));
    }

}
TOP

Related Classes of sagan.guides.support.GuideIndexIntegrationTests

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.