|
1 | | -import supertest from 'supertest'; |
2 | 1 | import { APIActions } from '../../lib/APIActions'; |
3 | | -import { testConfig } from '../../testConfig'; |
4 | | -import { test, expect } from '@playwright/test'; |
| 2 | +import { test } from '@playwright/test'; |
5 | 3 |
|
6 | 4 | const apiActions = new APIActions(); |
7 | 5 |
|
8 | | -test(`@API getTodos`, async () => { |
9 | | - const request = supertest(testConfig.qaApi); |
10 | | - const response = await request.get(`/todos/1`); |
11 | | - await apiActions.verifyStatusCode(response.status, 200, expect.getState().currentTestName); |
| 6 | +test(`@API getUsers`, async ({ request }) => { |
| 7 | + const response = await request.get(`/api/users?per_page=1`); |
| 8 | + await apiActions.verifyStatusCode(response.status(), 200); |
12 | 9 |
|
13 | 10 | //* Body Response Params and Body Response Headers are stored in single text file separated by # |
14 | | - const responseBodyParams = (await apiActions.readValuesFromTextFile(`getTodos`)).split(`#`)[0]; |
15 | | - await apiActions.verifyResponseBody(responseBodyParams, response.body, expect.getState().currentTestName, `Respomse Body`); |
| 11 | + const responseBodyParams = (await apiActions.readValuesFromTextFile(`getUsers`)).split(`#`)[0]; |
| 12 | + await apiActions.verifyResponseBody(responseBodyParams, await response.json(), `Response Body`); |
16 | 13 |
|
17 | | - const responseBodyHeaders = (await apiActions.readValuesFromTextFile(`getTodos`)).split(`#`)[1]; |
18 | | - await apiActions.verifyResponseBody(responseBodyHeaders, response.headers, expect.getState().currentTestName, `Respomse Headers`); |
| 14 | + const responseBodyHeaders = (await apiActions.readValuesFromTextFile(`getUsers`)).split(`#`)[1]; |
| 15 | + await apiActions.verifyResponseHeader(responseBodyHeaders, response.headersArray(), `Response Headers`); |
19 | 16 | }); |
20 | 17 |
|
| 18 | +//* In Case you application has token system, Please use the below code |
| 19 | + |
| 20 | +// test(`@API getUsersToken`, async ({ playwright, baseURL }) => { |
| 21 | +// const apiContext = await playwright.request.newContext({ |
| 22 | +// baseURL: baseURL, |
| 23 | +// extraHTTPHeaders: { |
| 24 | +// 'Authorization': `Your App Token` |
| 25 | +// } |
| 26 | +// }); |
| 27 | +// const response = await apiContext.get(`/api/users?per_page=1`); |
| 28 | +// await apiActions.verifyStatusCode(response.status(), 200); |
| 29 | + |
| 30 | +// //* Body Response Params and Body Response Headers are stored in single text file separated by # |
| 31 | +// const responseBodyParams = (await apiActions.readValuesFromTextFile(`getUsers`)).split(`#`)[0]; |
| 32 | +// await apiActions.verifyResponseBody(responseBodyParams, await response.json(), `Response Body`); |
| 33 | + |
| 34 | +// const responseBodyHeaders = (await apiActions.readValuesFromTextFile(`getUsers`)).split(`#`)[1]; |
| 35 | +// await apiActions.verifyResponseHeader(responseBodyHeaders, response.headersArray(), `Response Headers`); |
| 36 | +// }); |
| 37 | + |
0 commit comments