UNPKG

fintech-automation-test

Version:
70 lines (65 loc) 2.58 kB
const logger = require('../../../../logger'); const data = require('../../../test/api/testData/api_test_data.json'); Feature('API - GET Requests'); apiUrl = 'https://petstore.swagger.io/v2'; let queryParams = {}; function buildUrlWithQueryParams(baseUrl, queryParams = {}) { const url = new URL(baseUrl, apiUrl); Object.keys(queryParams).forEach((key) => { if (Array.isArray(queryParams[key])) { queryParams[key].forEach((value) => url.searchParams.append(key, value) ); } else { url.searchParams.append(key, queryParams[key]); } }); return url.pathname + url.search; } // Scenario('Verify GET pet_findByStatus', { retries: 1 }, async ({ I }) => { // logger.info('Running GET pet_findByStatus'); // logger.info('Request Details:'); // logger.info(`Method: GET`); // logger.info(`URL: /pet/findByStatus`); // // const resourceURL = '/pet/findByStatus'; // // queryParams = data.get_requests.findPetsByStatus.query_params; // logger.info(`Query Params: ${JSON.stringify(queryParams)}`); // // const fullUrl = buildUrlWithQueryParams(resourceURL, queryParams); // logger.info(`Full URL: ${fullUrl}`); // const response = await I.sendGetRequest(fullUrl); // // // Log the response status and details // logger.info(`Response Status: ${response.status}`); // logger.info(`Response Data: ${JSON.stringify(response.data)}`); // I.seeResponseCodeIs(200); // }); // // Scenario.only('Verify GET pet', { retries: 1 }, async ({ I }) => { // logger.info('Running GET pet'); // logger.info('Request Details:'); // logger.info(`Method: GET`); // logger.info(`URL: /pet/{petId}`); // // const response = await I.sendGetRequest('/pet/'+ data.get.storeOrderById.orderId); // logger.info(`Response Status: ${response.status}`); // logger.info(`Response Data: ${JSON.stringify(response.data)}`); // I.seeResponseCodeIs(200); // I.seeResponseContainsJson({"id": 1} ); // }); // // Scenario.only('Verify GET pet_findByStatus', { retries: 1 }, async ({ I }) => { // logger.info('Running GET pet_findByStatus'); // logger.info('Request Details:'); // logger.info(`Method: GET`); // logger.info(`URL: /pet/findByStatus`); // // const response = await I.sendGetRequest('/pet/findByStatus?status=' + data.get.petsByStatus.status); // logger.info(`Response Status: ${response.status}`); // logger.info(`Response Data: ${JSON.stringify(response.data)}`); // I.seeResponseCodeIs(200); // I.seeResponseContainsJson({ "name":"doggie" }); // // });