package RestAssuredNews.RestAssuredNewApp;
import org.testng.Assert;
import org.testng.annotations.Test;
import io.restassured.config.LogConfig;
import io.restassured.http.Header;
import io.restassured.http.Headers;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import static io.restassured.RestAssured.*;
import static io.restassured.matcher.RestAssuredMatchers.*;
import static org.hamcrest.Matchers.*;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import static org.hamcrest.MatcherAssert.assertThat;
public class GetAutomationTest {
public void testjava(){
}
@Test(enabled=false)
public void valiateStatusCode(){
given().
baseUri("https://api.postman.com")
.header("x-api-key","PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288").
when().
get("/workspaces").
then()
.log().all()
.assertThat()
.statusCode(200);
}
@Test(enabled=false)
public void validate_response_body(){
given().baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.when().get("/workspaces")
.then().log().all()
.assertThat().statusCode(200)
.body("workspaces.name",hasItems("APITesting","MyMockServer","My Workspace2","Team Workspace",
"myworkspace")
,"workspaces.type",hasItems("team","team","team","team"),
"workspaces[0].name",equalTo("APITesting")
,"workspaces[0].name",is(equalTo("APITesting"))
,"workspaces.size()",equalTo(5)
,"workspaces.name",hasItem("APITesting"));
}
@Test(enabled=false)
public void extract_response(){
Response res= given().baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.when()
.get("/workspaces")
.then()
.assertThat()
.statusCode(200)
.extract().response();
System.out.println("Response = " + res.asString());
}
@Test(enabled=false)
public void extract_single_value_from_response(){
String name= given().baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.when()
.get("/workspaces")
.then().assertThat()
.statusCode(200)
.extract()
.response().path("workspaces[0].name");
System.out.println("workspace name = " + name);
// JsonPath.from(res).getString("workspaces[0].name");
//System.out.println("workspace name = " + JsonPath.from(res).getString("workspaces[0].name"));
//System.out.println("workspace name = " + res.path("workspaces[0].name"));
//JsonPath js=new JsonPath(res.asString());
// System.out.println("workspace name = " + js.getString("workspaces[0].name"));
}
@Test(enabled=false)
public void hamcrest_assert_on_extracted_response(){
String name =given().baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.when()
.get("/workspaces")
.then()
.assertThat()
.statusCode(200)
.extract()
.response().path("workspaces[0].name");
System.out.println("workspace name=" + name);
// assertThat(name,equalTo("APITesting"));
Assert.assertEquals(name, "APITesting");
}
@Test(enabled=false)
public void validate_response_body_hamcrest_learning(){
given()
.baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.when()
.get("/workspaces")
.then()
.assertThat()
.statusCode(200)
.body("workspaces.name",contains("APITesting","MyMockServer","My Workspace2",
"Team Workspace","myworkspace"),"workspaces.name",is(not(emptyArray()))
,"workspaces.name",hasSize(5)
//,"workspaces.name",everyItem(startsWith("My"))
,"workspaces[0]",hasKey("id")
,"workspaces[0]",hasValue("APITesting")
,"workspaces[0]",hasEntry("id","1f44f446-31d0-429e-8e92-ed6fdb17934b")
,"workspaces[0]",not(equalTo(Collections.EMPTY_MAP))
,"workspaces[0].name",allOf(startsWith("API"),containsString("Testing")));
}
@Test(enabled=false)
public void request_response_logging(){
given()
.baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.config(config.logConfig(LogConfig.logConfig().enableLoggingOfRequestAndResponseIfValidationFails()))
//.log().ifValidationFails()
.when()
.get("/workspaces")
.then()
//log().ifValidationFails().
.assertThat()
.statusCode(201);
}
@Test(enabled=false)
public void log_blacklist_header(){
Set<String> headers=new HashSet<String>();
headers.add("x-api-key");
headers.add("Accept");
given()
.baseUri("https://api.postman.com")
.header("x-api-key", "PMAK-606a8c2da5c08a004dfd060f-c7cdd622c690177cce465538021e349288")
.config(config.logConfig(LogConfig.logConfig().blacklistHeaders(headers)))
.log().all()
.when()
.get("/workspaces")
.then()
.assertThat()
.statusCode(200);
}
@Test(enabled=false)
public void multiple_headers(){
HashMap<String,String> headers=new HashMap<String,String>();
headers.put("header", "value1");
headers.put("x-mock-match-request-headers", "header");
given()
.baseUri("https://5e6acb5c-eb77-40a9-ac40-7dfc335f8288.mock.pstmn.io").
// headers(headers).
header("multiValueHeader","value1","value2").
log().headers().
when()
.get("/get")
.then()
.log().all()
.assertThat()
.statusCode(200);
}
@Test(enabled=false)
public void multi_value_in_the_request(){
Header header1=new Header("multiValueHeader","value1");
Header header2=new Header("multiValueHeader","value2");
Headers headers=new Headers(header1,header2);
given().
baseUri("https://5e6acb5c-eb77-40a9-ac40-7dfc335f8288.mock.pstmn.io")
.headers(headers)
.log().headers().
when().
get("/get")
.then()
.log()
.all()
.assertThat()
.statusCode(200);
}
@Test(enabled=false)
public void asser_response_headers(){
HashMap<String,String> headers=new HashMap<String,String>();
headers.put("header","value1");
headers.put("x-mock-match-request-headers","header");
given()
.baseUri("https://5e6acb5c-eb77-40a9-ac40-7dfc335f8288.mock.pstmn.io").
headers(headers).
when()
.get("/get").
then().
log().all().
assertThat()
.statusCode(200).
//header("responseHeader","resValue1").
//header("X-RateLimit-Limit","120");
headers("responseHeader","resValue1","X-RateLimit-Limit","120");
}
@Test(enabled=false)
public void extract_response_headers(){
HashMap<String,String> headers=new HashMap<String,String>();
headers.put("header","value1");
headers.put("x-mock-match-request-headers","header");
Headers extractedheaders=given()
.baseUri("https://5e6acb5c-eb77-40a9-ac40-7dfc335f8288.mock.pstmn.io").
headers(headers).
when().get("/get").
then().
log().all()
.assertThat()
.statusCode(200)
.extract()
.headers();
for(Header header:extractedheaders){
System.out.println("header name = " + header.getName() + " ,");
System.out.println("header value = " + header.getValue());
}
/*
System.out.println("header name = " + extractedheaders.get("responseHeader").getName());
System.out.println("header value = " + extractedheaders.get("responseHeader").getValue());
System.out.println("header value = " + extractedheaders.getValue("responseHeader"));
*/
}
@Test
public void extract_multivalue_response_header(){
HashMap<String,String> headers=new HashMap<String,String>();
headers.put("header","value1");
headers.put("x-mock-match-request-headers","header");
Headers extractedheaders=given()
.baseUri("https://5e6acb5c-eb77-40a9-ac40-7dfc335f8288.mock.pstmn.io").
headers(headers).
when().get("/get").
then().
//log().all()
assertThat()
.statusCode(200)
.extract()
.headers();
List<String> values=extractedheaders.getValues("multiValueHeader");
for(String value:values){
System.out.println(value);
} }}
No comments:
Post a Comment