import chai from "chai"; import chaiAsPromised from "chai-as-promised"; import { createBearerAuthenticationConfig } from "../utils/config"; import { PromiseFeatureManagementApi } 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 PromiseFeatureManagementApi(config); describe('FeatureManagementApi', function() { describe('searchFeatures', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "searchFeatures" ); 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.searchFeatures( // searchFeaturesRequest SearchFeaturesRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.searchFeatures( // searchFeaturesRequest SearchFeaturesRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); describe('updateFeatureAssignments', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "updateFeatureAssignments" ); 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.updateFeatureAssignments( // updateFeatureAssignmentsRequest UpdateFeatureAssignmentsRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.updateFeatureAssignments( // updateFeatureAssignmentsRequest UpdateFeatureAssignmentsRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); describe('updateFeatureValue', function() { const testReqBodies = requestBodies.filter( (body: any) => body.Metadata.operationId === "updateFeatureValue" ); 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.updateFeatureValue( // updateFeatureValueRequest UpdateFeatureValueRequest test.Body ) } catch (er) { console.error(er, "Response", data) expect(er).to.be.undefined } } else { await expect( instance.updateFeatureValue( // updateFeatureValueRequest UpdateFeatureValueRequest test.Body ) ).to.be.rejectedWith(Error); } }); }); }); });