Skip to content

Commit e88b41b

Browse files
authored
First commit
1 parent d66c2d9 commit e88b41b

14 files changed

+2318
-0
lines changed

api-tests/baseUrl_from_property.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
var PropertiesReader = require('properties-reader');
2+
var properties = PropertiesReader('config/env.properties');
3+
4+
const axios = require("axios");
5+
const { expect } = require("chai");
6+
7+
describe("Base URL from Property File Tests", async () => {
8+
it("should be able get baseUrl from property file", async () => {
9+
console.log(properties.get("baseUrl"));
10+
const res = await axios.get(properties.get("baseUrl") + '/users');
11+
console.log(res.data);
12+
expect(res.status).equal(200);
13+
expect(res.data.page).equal(1);
14+
expect(res.data.per_page).equal(6);
15+
})
16+
})

api-tests/delete_request.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
4+
describe("DELETE API Request Tests", async () => {
5+
it("should be able delete user with id 2", async () => {
6+
const res = await axios.delete('https://reqres.in/api/users/2');
7+
console.log(res.data);
8+
expect(res.status).equal(204);
9+
})
10+
})

api-tests/get_request.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
4+
describe("GET API Request Tests", async () => {
5+
it("should be able get user list", async () => {
6+
const res = await axios.get('https://reqres.in/api/users');
7+
console.log(res.data);
8+
expect(res.status).equal(200);
9+
expect(res.data.page).equal(1);
10+
expect(res.data.per_page).equal(6);
11+
})
12+
})

api-tests/patch_request.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
const { faker } = require("@faker-js/faker");
4+
5+
describe("PATCH API Request Tests", async () => {
6+
it("should be able update name of the user", async () => {
7+
const randomName = faker.name.findName();
8+
const randomJobTitle = faker.name.jobTitle();
9+
const res = await axios.put('https://reqres.in/api/users/2',
10+
{
11+
"name": randomName
12+
}
13+
).then(res => res.data)
14+
console.log(res);
15+
expect(res.name).equal(randomName);
16+
})
17+
})

api-tests/post_request.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
const { faker } = require("@faker-js/faker");
4+
5+
describe("POST API Request Tests", async () => {
6+
it("should be able post a user", async () => {
7+
const randomName = faker.name.findName();
8+
const randomJobTitle = faker.name.jobTitle();
9+
const res = await axios.post('https://reqres.in/api/users',
10+
{
11+
"name": randomName,
12+
"job": randomJobTitle
13+
}
14+
).then(res => res.data)
15+
console.log(res);
16+
expect(res.name).equal(randomName);
17+
expect(res.job).equal(randomJobTitle);
18+
})
19+
})

api-tests/put_request.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
const { faker } = require("@faker-js/faker");
4+
5+
describe("PUT API Request Tests", async () => {
6+
it("should be able update a user", async () => {
7+
const randomName = faker.name.findName();
8+
const randomJobTitle = faker.name.jobTitle();
9+
const res = await axios.put('https://reqres.in/api/users/2',
10+
{
11+
"name": randomName,
12+
"job": randomJobTitle
13+
}
14+
).then(res => res.data)
15+
console.log(res);
16+
expect(res.name).equal(randomName);
17+
expect(res.job).equal(randomJobTitle);
18+
})
19+
})

api-tests/write_data_to_json.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
const axios = require("axios");
2+
const { expect } = require("chai");
3+
const { faker } = require("@faker-js/faker");
4+
const fs = require("fs");
5+
const postResData = require("../response-data/post_response_data.json");
6+
7+
describe("Write Data Tests", async () => {
8+
it("should be able write data to JSON", async () => {
9+
const randomName = faker.name.findName();
10+
const randomJobTitle = faker.name.jobTitle();
11+
const res = await axios.post('https://reqres.in/api/users',
12+
{
13+
"name": randomName,
14+
"job": randomJobTitle
15+
}
16+
).then(res => res.data)
17+
console.log(res);
18+
expect(res.name).equal(randomName);
19+
expect(res.job).equal(randomJobTitle);
20+
21+
postResData.name = res.name; // get and set the token to env variable
22+
postResData.job = res.job;
23+
postResData.id = res.id;
24+
postResData.createdAt = res.createdAt;
25+
fs.writeFileSync("./response-data/post_response_data.json", JSON.stringify(postResData)); // write the post response data to the post_response_data.json file
26+
27+
})
28+
})

assets/get_request.png

68.1 KB
Loading
61.7 KB
Loading

assets/test-results.png

107 KB
Loading

0 commit comments

Comments
 (0)