diff options
-rw-r--r-- | src/main/java/com/mavlushechka/a1qa/utils/JSONPlaceholderAPIManager.java | 28 | ||||
-rw-r--r-- | src/main/resources/testData.json | 5 | ||||
-rw-r--r-- | src/test/java/com/mavlushechka/a1qa/TestCase1.java | 10 |
3 files changed, 25 insertions, 18 deletions
diff --git a/src/main/java/com/mavlushechka/a1qa/utils/JSONPlaceholderAPIManager.java b/src/main/java/com/mavlushechka/a1qa/utils/JSONPlaceholderAPIManager.java index 2305daf..25b9fe4 100644 --- a/src/main/java/com/mavlushechka/a1qa/utils/JSONPlaceholderAPIManager.java +++ b/src/main/java/com/mavlushechka/a1qa/utils/JSONPlaceholderAPIManager.java @@ -9,28 +9,32 @@ import java.util.List; public class JSONPlaceholderAPIManager { - public static Post getPost(String spec) throws IOException { - return getObject(spec, Post.class); + private final static String postsSpec = "/posts"; + private final static String usersSpec = "/users"; + + + public static Post getPost(int id) throws IOException { + return getObject(postsSpec + "/" + id, Post.class); } - public static List<Post> getPosts(String spec) throws IOException { - return getObjects(spec, Post.class); + public static List<Post> getPosts() throws IOException { + return getObjects(postsSpec, Post.class); } - public static Post postPost(String spec, Post post) throws IOException { - return postObject(spec, post, Post.class); + public static Post postPost(Post post) throws IOException { + return postObject(postsSpec, post, Post.class); } - public static User getUser(String spec) throws IOException { - return getObject(spec, User.class); + public static User getUser(int id) throws IOException { + return getObject(usersSpec + "/" + id, User.class); } - public static List<User> getUsers(String spec) throws IOException { - return getObjects(spec, User.class); + public static List<User> getUsers() throws IOException { + return getObjects(usersSpec, User.class); } - public static User postUser(String spec, User user) throws IOException { - return postObject(spec, user, User.class); + public static User postUser(User user) throws IOException { + return postObject(usersSpec, user, User.class); } private static <T> T getObject(String spec, Class<T> classOfObject) throws IOException { diff --git a/src/main/resources/testData.json b/src/main/resources/testData.json index b495e75..24ac764 100644 --- a/src/main/resources/testData.json +++ b/src/main/resources/testData.json @@ -63,7 +63,10 @@ { "spec": "/users/5", "requestMethod": "GET", - "responseCode": "200" + "responseCode": "200", + "user": { + "id": "5" + } } ] } diff --git a/src/test/java/com/mavlushechka/a1qa/TestCase1.java b/src/test/java/com/mavlushechka/a1qa/TestCase1.java index 7bcaae1..6a7d525 100644 --- a/src/test/java/com/mavlushechka/a1qa/TestCase1.java +++ b/src/test/java/com/mavlushechka/a1qa/TestCase1.java @@ -20,7 +20,7 @@ public class TestCase1 extends BaseTest { LoggerUtils.step("Send GET Request to get all posts (/posts)."); String postsJson = URLConnectionManager.get(postsSpec); Assert.assertTrue(JSONParser.isJson(postsJson), "Response is not json."); - List<Post> postsList = JSONPlaceholderAPIManager.getPosts(postsSpec); + List<Post> postsList = JSONPlaceholderAPIManager.getPosts(); Assert.assertTrue(Posts.isPostsAscending(postsList), "Posts are not sorted ascending."); String post99Spec = JSONParser.parseData("testData", "testCases[0].steps[1].spec"); @@ -28,7 +28,7 @@ public class TestCase1 extends BaseTest { int post99ResponseCode = URLConnectionManager.getResponseCode(post99Spec, post99RequestMethod); Assert.assertEquals(post99ResponseCode, Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[1].responseCode")), "Response code is not correct."); LoggerUtils.step("Send GET request to get post with id=99 (/posts/99)."); - Post post99 = JSONPlaceholderAPIManager.getPost(post99Spec); + Post post99 = JSONPlaceholderAPIManager.getPost(Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[1].post.id"))); Assert.assertEquals(post99.id, JSONParser.parseData("testData", "testCases[0].steps[1].post.id"), "Post id is not correct."); Assert.assertEquals(post99.userId, JSONParser.parseData("testData", "testCases[0].steps[1].post.userId"), "Post user id is not correct."); Assert.assertEquals(post99.title.isEmpty(), Boolean.parseBoolean(JSONParser.parseData("testData", "testCases[0].steps[1].post.isTitleEmpty")), "Post title is not correct."); @@ -58,14 +58,14 @@ public class TestCase1 extends BaseTest { int postResponseCode = URLConnectionManager.getResponseCode(postSpec, postRequestMethod); Assert.assertEquals(postResponseCode, Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[3].responseCode")), "Response code is not correct."); LoggerUtils.step("Send POST request to create post with userId=1 and random body and random title (/posts)."); - Assert.assertEquals(post, JSONPlaceholderAPIManager.postPost(postSpec, post), "Post information is not correct."); + Assert.assertEquals(post, JSONPlaceholderAPIManager.postPost(post), "Post information is not correct."); String usersSpec = JSONParser.parseData("testData", "testCases[0].steps[4].spec"); String usersRequestMethod = JSONParser.parseData("testData", "testCases[0].steps[4].requestMethod"); int usersResponseCode = URLConnectionManager.getResponseCode(usersSpec, usersRequestMethod); Assert.assertEquals(usersResponseCode, Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[4].responseCode")), "Response code is not correct."); LoggerUtils.step("Send GET request to get users (/users)."); - List<User> users = JSONPlaceholderAPIManager.getUsers(usersSpec); + List<User> users = JSONPlaceholderAPIManager.getUsers(); User user = null; for (User userObject : users) { if (Integer.parseInt(userObject.id) == Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[4].user.id"))) { @@ -80,7 +80,7 @@ public class TestCase1 extends BaseTest { int user5ResponseCode = URLConnectionManager.getResponseCode(user5Spec, user5RequestMethod); Assert.assertEquals(user5ResponseCode, Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[5].responseCode")), "Response code is not correct."); LoggerUtils.step("Send GET request to get user with id=5 (/users/5)."); - User user5 = JSONPlaceholderAPIManager.getUser(user5Spec); + User user5 = JSONPlaceholderAPIManager.getUser(Integer.parseInt(JSONParser.parseData("testData", "testCases[0].steps[5].user.id"))); Assert.assertEquals(user, user5, "User information is not correct."); } |