001/* 002 * Copyright 2012-2018 the original author or authors. 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017package org.springframework.boot.docs.test.autoconfigure.restdocs.restassured; 018 019// tag::source[] 020import io.restassured.specification.RequestSpecification; 021import org.junit.Test; 022import org.junit.runner.RunWith; 023 024import org.springframework.beans.factory.annotation.Autowired; 025import org.springframework.boot.test.autoconfigure.restdocs.AutoConfigureRestDocs; 026import org.springframework.boot.test.context.SpringBootTest; 027import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; 028import org.springframework.boot.web.server.LocalServerPort; 029import org.springframework.test.context.junit4.SpringRunner; 030 031import static io.restassured.RestAssured.given; 032import static org.hamcrest.CoreMatchers.is; 033import static org.springframework.restdocs.restassured3.RestAssuredRestDocumentation.document; 034 035@RunWith(SpringRunner.class) 036@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) 037@AutoConfigureRestDocs 038public class UserDocumentationTests { 039 040 @LocalServerPort 041 private int port; 042 043 @Autowired 044 private RequestSpecification documentationSpec; 045 046 @Test 047 public void listUsers() { 048 given(this.documentationSpec).filter(document("list-users")).when() 049 .port(this.port).get("/").then().assertThat().statusCode(is(200)); 050 } 051 052} 053// end::source[]