updated rest assured test

parent 5cb18d07
......@@ -7,11 +7,12 @@
<list default="true" id="bd185af2-024c-4245-af2c-5893b8b011d9" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/pom.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/main/java/com/example/teacher/controller/TeacherController.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/main/java/com/example/teacher/controller/TeacherController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/controller/TeacherControllerTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/controller/TeacherControllerTest.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/main/java/com/example/teacher/model/Teacher.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/main/java/com/example/teacher/model/Teacher.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/controller/TeacherControllerTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/controller/TeacherEndToEndTest.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/service/TeacherServiceTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/src/test/java/com/example/teacher/service/TeacherServiceTest.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/classes/com/example/teacher/model/Teacher.class" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/classes/com/example/teacher/model/Teacher.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/generated-sources/annotations/com/example/teacher/mapper/TeacherMapperImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/generated-sources/annotations/com/example/teacher/mapper/TeacherMapperImpl.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/test-classes/com/example/teacher/controller/TeacherControllerTest.class" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/test-classes/com/example/teacher/controller/TeacherControllerTest.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/test-classes/com/example/teacher/controller/TeacherControllerTest.class" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/test-classes/com/example/teacher/service/TeacherServiceTest.class" beforeDir="false" afterPath="$PROJECT_DIR$/../../teacher-service/teacher-service/target/test-classes/com/example/teacher/service/TeacherServiceTest.class" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
......
......@@ -75,11 +75,11 @@
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple -->
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1.1</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.googlecode.json-simple</groupId>-->
<!-- <artifactId>json-simple</artifactId>-->
<!-- <version>1.1.1</version>-->
<!-- </dependency>-->
</dependencies>
......
......@@ -23,4 +23,11 @@ public class Teacher {
@Temporal(TemporalType.DATE)
private Date dateOfJoining;
private boolean active;
public Teacher(String name, int age, String subject, Date dateOfJoining) {
this.name = name;
this.age = age;
this.subject = subject;
this.dateOfJoining = dateOfJoining;
}
}
......@@ -6,9 +6,7 @@ import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.response.Response;
import lombok.extern.slf4j.Slf4j;
import org.json.JSONException;
import org.json.simple.JSONObject;
//import org.json.JSONObject;
//import org.json.simple.JSONObject;
import org.junit.Assert;
import org.junit.Test;
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
......@@ -18,19 +16,38 @@ import java.text.SimpleDateFormat;
import java.util.Date;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.samePropertyValuesAs;
@Slf4j
@WebMvcTest
public class TeacherControllerTest {
public class TeacherEndToEndTest {
@Test
public void getAllTeachersStatusTest(){
RestAssured.get("http://localhost:8081/teachers/all").then().statusCode(200).log().all();
}
@Test
public void getTeacherByIdReturnsObjectTest() throws ParseException {
Teacher teacher = RestAssured
.given()
.get("http://localhost:8081/teachers/32")
.as(Teacher.class);
Date date = new SimpleDateFormat("dd:MM:yyyy hh:mm:ss").parse("10:06:2008 06:00:00");
Teacher myTeacher = new Teacher(32, "Naveed", 25, "28", date, true);
Assert.assertThat(myTeacher, samePropertyValuesAs(teacher));
}
@Test
public void getTeacherByWrongIdStatusTest() {
RestAssured.get("http://localhost:8081/teachers/411").then().statusCode(404).log().all();
RestAssured
.given()
.get("http://localhost:8081/teachers/411")
.then()
.statusCode(404)
.log()
.headers();
}
@Test
......@@ -63,36 +80,36 @@ public class TeacherControllerTest {
Assert.assertEquals(response.asString(), "Teacher does not exist");
log.info(response.asPrettyString());
}
@Test
public void createTeacherTest() throws JSONException, ParseException {
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd:MM:yyyy");
String stringDate = simpleDateFormat.format(date);
JSONObject requestParams = new JSONObject();
requestParams.put("name", "QadeerTest");
requestParams.put("age", "57");
requestParams.put("subject", "Math");
requestParams.put("dateOfJoining", stringDate);
RestAssured
.given()
.contentType(ContentType.JSON)
.body(requestParams.toString())
.when()
.post("http://localhost:8081/teachers")
.then()
.statusCode(201);
}
@Test
public void deleteTeacherByIdTest() {
RestAssured
.given()
.delete("http://localhost:8081/teachers/delete/36")
.then()
.statusCode(200);
}
//
// @Test
// public void createTeacherTest() throws JSONException, ParseException {
// Date date = new Date();
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd:MM:yyyy");
// String stringDate = simpleDateFormat.format(date);
//
// JSONObject requestParams = new JSONObject();
// requestParams.put("name", "QadeerTest");
// requestParams.put("age", "57");
// requestParams.put("subject", "Math");
// requestParams.put("dateOfJoining", stringDate);
// RestAssured
// .given()
// .contentType(ContentType.JSON)
// .body(requestParams.toString())
// .when()
// .post("http://localhost:8081/teachers")
// .then()
// .statusCode(201);
// }
// @Test
// public void deleteTeacherByIdTest() {
// RestAssured
// .given()
// .delete("http://localhost:8081/teachers/delete/36")
// .then()
// .statusCode(200);
// }
@Test
public void deleteTeacherByWrongIdTest() {
......@@ -103,24 +120,41 @@ public class TeacherControllerTest {
.statusCode(404);
}
// @Test
// public void updateTeacher() throws ParseException {
// Date date = new Date();
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd:MM:yyyy");
// String stringDate = simpleDateFormat.format(date);
// JSONObject requestParams = new JSONObject();
// requestParams.put("name", "QadeerUpdated");
// requestParams.put("age", "57");
// requestParams.put("subject", "UpdatedSubject");
// requestParams.put("dateOfJoining", stringDate);
// RestAssured
// .given()
// .body(requestParams.toJSONString())
// .contentType(ContentType.JSON)
// .put("http://localhost:8081/teachers/35")
// .then()
// .statusCode(202)
// .log()
// .all();
// }
@Test
public void updateTeacher() throws ParseException {
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd:MM:yyyy");
String stringDate = simpleDateFormat.format(date);
JSONObject requestParams = new JSONObject();
requestParams.put("name", "QadeerUpdated");
requestParams.put("age", "57");
requestParams.put("subject", "UpdatedSubject");
requestParams.put("dateOfJoining", stringDate);
public void createTeacherWithObject() throws ParseException {
Date date = new SimpleDateFormat("dd:MM:yyyy").parse("11:11:2011");
Teacher teacher = new Teacher("TestTeacher", 25, "TestMaths", date);
RestAssured
.given()
.body(requestParams.toJSONString())
.contentType(ContentType.JSON)
.put("http://localhost:8081/teachers/35")
.body(teacher)
.when()
.post("http://localhost:8081/teachers")
.then()
.statusCode(202)
.assertThat()
.statusCode(201)
.log()
.all();
.body();
}
}
......@@ -6,10 +6,10 @@ import com.example.teacher.mapper.TeacherMapper;
import com.example.teacher.model.Teacher;
import com.example.teacher.repository.TeacherRepository;
import org.json.JSONException;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.jupiter.api.AfterEach;
import org.mockito.*;
import java.text.ParseException;
......@@ -61,7 +61,11 @@ public class TeacherServiceTest {
List<Teacher> mockTeacherList = teacherService.findAllTeachers();
// assert statements checks if the results are as we expected.
Assert.assertEquals(mockTeacherList.get(0), teacherList.get(0));
Assert.assertEquals(mockTeacherList.get(0).getId(), teacherList.get(0).getId());
Assert.assertEquals(mockTeacherList.get(0).getName(), teacherList.get(0).getName());
Assert.assertEquals(mockTeacherList.get(0).getAge(), teacherList.get(0).getAge());
Assert.assertEquals(mockTeacherList.get(0).getSubject(), teacherList.get(0).getSubject());
Assert.assertEquals(mockTeacherList.get(0).getDateOfJoining(), teacherList.get(0).getDateOfJoining());
}
@Test
......@@ -120,7 +124,6 @@ public class TeacherServiceTest {
@Test
public void deleteTeacherByIdTest() {
Teacher myDeletedTeacher = new Teacher(0, "Teacher", 25, "maths", new Date(), false);
Mockito.when(teacherRepository.findTeacherById(0)).thenReturn(myTeacher);
boolean isDeleted = teacherService.deleteTeacherById(0);
Assert.assertTrue(isDeleted);
......@@ -131,7 +134,6 @@ public class TeacherServiceTest {
@Test
public void deleteTeacherByWrongIdTest() {
Teacher myDeletedTeacher = new Teacher(0, "Teacher", 25, "maths", new Date(), false);
Mockito.when(teacherRepository.findTeacherById(0)).thenReturn(null);
boolean isDeleted = teacherService.deleteTeacherById(0);
Assert.assertFalse(isDeleted);
......@@ -154,7 +156,7 @@ public class TeacherServiceTest {
Assert.assertEquals(teacher.getAge(), myTeacher.getAge());
}
@AfterEach
@After
public void tearDown() throws Exception {
openMocks.close();
}
......
......@@ -7,7 +7,7 @@ import org.springframework.stereotype.Component;
@Generated(
value = "org.mapstruct.ap.MappingProcessor",
date = "2022-08-04T11:52:34+0500",
date = "2022-08-04T13:22:55+0500",
comments = "version: 1.4.2.Final, compiler: javac, environment: Java 18.0.1.1 (Oracle Corporation)"
)
@Component
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment