package framework.RestAPI;
import org.testng.Assert;
import org.testng.annotations.Test;
import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.response.Response;
import com.relevantcodes.extentreports.LogStatus;
import framework.TestBase.TestBase;
import framework.configReader.ObjectRepo;
import static com.jayway.restassured.RestAssured.*;
public class weatherGetRequest extends TestBase {
@Test(priority=1)
public void weatherGetStatusCode(){
Response resp=
given().
param("q","London").
param("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
int statuscode=resp.getStatusCode();
Assert.assertEquals(statuscode, 200);
TestBase.logger.info("Get the Status code");
TestBase.extentlogger = TestBase.extent.startTest("Verify the status code -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
//System.out.println(resp.getStatusCode());
}
@Test(priority=2)
public void getResponse(){
Response resp=
given().
parameter("q","London").
parameter("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
String Expected="light intensity drizzle";
String Actual=resp.then().contentType(ContentType.JSON).extract().path("weather[0].description");
Assert.assertEquals(Actual,Expected);
TestBase.logger.info("check response data");
TestBase.extentlogger = TestBase.extent.startTest("Check the response data -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
// System.out.println(resp.asString());
}
@Test(priority=3)
public void transferLonLat(){
Response resp=given().
parameter("q","London").
parameter("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
String respbyid = resp.then().
contentType(ContentType.JSON).
extract().
path("weather[0].description");
System.out.println(respbyid);
String lon=String.valueOf(resp.then().
contentType(ContentType.JSON).
extract().
path("coord.lon"));
System.out.println(lon);
String lat=String.valueOf(resp.then().
contentType(ContentType.JSON).
extract().
path("coord.lat"));
System.out.println(lat);
String respbycoord=given().
parameter("lat",lat ).
parameter("lon", lon).
parameter("appid","b6907d289e10d714a6e88b30761fae22").
get("http://samples.openweathermap.org/data/2.5/weather").
then().
contentType(ContentType.JSON).extract().
path("weather[0].description");
System.out.println(respbycoord);
try{
Assert.assertEquals(respbyid, respbycoord);
TestBase.logger.info("Verify longitude and latitude");
TestBase.extentlogger = TestBase.extent.startTest("Check the longitude and latitude -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
}
catch(Exception e){
TestBase.logger.info("Verify longitude and latitude");
TestBase.extentlogger = TestBase.extent.startTest("Check the longitude and latitude -->passTest");
TestBase.extentlogger.log(LogStatus.FAIL, "Test Case failed");
}
}
}
import org.testng.Assert;
import org.testng.annotations.Test;
import com.jayway.restassured.http.ContentType;
import com.jayway.restassured.response.Response;
import com.relevantcodes.extentreports.LogStatus;
import framework.TestBase.TestBase;
import framework.configReader.ObjectRepo;
import static com.jayway.restassured.RestAssured.*;
public class weatherGetRequest extends TestBase {
@Test(priority=1)
public void weatherGetStatusCode(){
Response resp=
given().
param("q","London").
param("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
int statuscode=resp.getStatusCode();
Assert.assertEquals(statuscode, 200);
TestBase.logger.info("Get the Status code");
TestBase.extentlogger = TestBase.extent.startTest("Verify the status code -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
//System.out.println(resp.getStatusCode());
}
@Test(priority=2)
public void getResponse(){
Response resp=
given().
parameter("q","London").
parameter("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
String Expected="light intensity drizzle";
String Actual=resp.then().contentType(ContentType.JSON).extract().path("weather[0].description");
Assert.assertEquals(Actual,Expected);
TestBase.logger.info("check response data");
TestBase.extentlogger = TestBase.extent.startTest("Check the response data -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
// System.out.println(resp.asString());
}
@Test(priority=3)
public void transferLonLat(){
Response resp=given().
parameter("q","London").
parameter("appid","b6907d289e10d714a6e88b30761fae22").
when().
get("http://samples.openweathermap.org/data/2.5/weather");
String respbyid = resp.then().
contentType(ContentType.JSON).
extract().
path("weather[0].description");
System.out.println(respbyid);
String lon=String.valueOf(resp.then().
contentType(ContentType.JSON).
extract().
path("coord.lon"));
System.out.println(lon);
String lat=String.valueOf(resp.then().
contentType(ContentType.JSON).
extract().
path("coord.lat"));
System.out.println(lat);
String respbycoord=given().
parameter("lat",lat ).
parameter("lon", lon).
parameter("appid","b6907d289e10d714a6e88b30761fae22").
get("http://samples.openweathermap.org/data/2.5/weather").
then().
contentType(ContentType.JSON).extract().
path("weather[0].description");
System.out.println(respbycoord);
try{
Assert.assertEquals(respbyid, respbycoord);
TestBase.logger.info("Verify longitude and latitude");
TestBase.extentlogger = TestBase.extent.startTest("Check the longitude and latitude -->passTest");
TestBase.extentlogger.log(LogStatus.PASS, "Test Case Passed is passTest");
}
catch(Exception e){
TestBase.logger.info("Verify longitude and latitude");
TestBase.extentlogger = TestBase.extent.startTest("Check the longitude and latitude -->passTest");
TestBase.extentlogger.log(LogStatus.FAIL, "Test Case failed");
}
}
}
JARS needed
<dependency>
<groupId>com.jayway.restassured</groupId>
<artifactId>rest-assured</artifactId>
<version>2.9.0</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.jayway.jsonpath/json-path -->
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>2.4.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.jayway.restassured/json-schema-validator -->
<dependency>
<groupId>com.jayway.restassured</groupId>
<artifactId>json-schema-validator</artifactId>
<version>2.2.0</version>
</dependency>
</dependencies>
No comments:
Post a Comment