import chai from "chai"; import chaiAsPromised from "chai-as-promised"; import { createBearerAuthenticationConfig } from "../utils/config"; import { PromiseCustomCalendarsApi } from "../types/PromiseAPI"; import requestBodies from "./testDataUpdated.json"; chai.use(chaiAsPromised); const expect = chai.expect; const baseUrlFromCli = process.argv.filter(s => s.startsWith("--baseUrl="))?.[0]?.split("=")?.[1] const BASE_URL = baseUrlFromCli || "http://127.0.0.1:4123" const config = createBearerAuthenticationConfig(BASE_URL, { username: "tsadmin", password: "admin", }); const instance = new PromiseCustomCalendarsApi(config); describe('CustomCalendarsApi', function() { describe('createCalendar', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "createCalendar" ); testReqBodies.forEach(async (test: any) => { it(`${test.Metadata.operationId} - ${test.Metadata.scenario} : Testid - ${test.Metadata.testId}`, async function () { if (test.Metadata.scenario === "positive") { var data; try { data = await instance.createCalendar( // createCalendarRequest CreateCalendarRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.createCalendar( // createCalendarRequest CreateCalendarRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); describe('deleteCalendar', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "deleteCalendar" ); testReqBodies.forEach(async (test: any) => { it(`${test.Metadata.operationId} - ${test.Metadata.scenario} : Testid - ${test.Metadata.testId}`, async function () { if (test.Metadata.scenario === "positive") { var data; try { data = await instance.deleteCalendar( // calendarIdentifier calendar_identifier test.Path_Variables.calendar_identifier ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.deleteCalendar( // calendarIdentifier calendar_identifier test.Path_Variables.calendar_identifier ) ).to.be.rejectedWith(Error); } }); }); }); describe('generateCSV', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "generateCSV" ); testReqBodies.forEach(async (test: any) => { it(`${test.Metadata.operationId} - ${test.Metadata.scenario} : Testid - ${test.Metadata.testId}`, async function () { if (test.Metadata.scenario === "positive") { var data; try { data = await instance.generateCSV( // generateCSVRequest GenerateCSVRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.generateCSV( // generateCSVRequest GenerateCSVRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); describe('searchCalendars', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "searchCalendars" ); testReqBodies.forEach(async (test: any) => { it(`${test.Metadata.operationId} - ${test.Metadata.scenario} : Testid - ${test.Metadata.testId}`, async function () { if (test.Metadata.scenario === "positive") { var data; try { data = await instance.searchCalendars( // searchCalendarsRequest SearchCalendarsRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.searchCalendars( // searchCalendarsRequest SearchCalendarsRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); describe('updateCalendar', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "updateCalendar" ); testReqBodies.forEach(async (test: any) => { it(`${test.Metadata.operationId} - ${test.Metadata.scenario} : Testid - ${test.Metadata.testId}`, async function () { if (test.Metadata.scenario === "positive") { var data; try { data = await instance.updateCalendar( // calendarIdentifier calendar_identifier test.Path_Variables.calendar_identifier , // updateCalendarRequest UpdateCalendarRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.updateCalendar( // calendarIdentifier calendar_identifier test.Path_Variables.calendar_identifier , // updateCalendarRequest UpdateCalendarRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); });