mirror of
				https://github.com/juspay/hyperswitch.git
				synced 2025-11-04 05:59:48 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			124 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			124 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import fixtures from "../../../fixtures/routing.json";
 | 
						|
import State from "../../../utils/State";
 | 
						|
import * as utils from "../../configs/Routing/Utils";
 | 
						|
 | 
						|
let globalState;
 | 
						|
 | 
						|
// Marked as skipped as the List APIs are not implemented yet.
 | 
						|
// In addition to this, we do not want to hard code the MCA Ids in the test cases.
 | 
						|
describe("Routing core APIs", () => {
 | 
						|
  context("Login", () => {
 | 
						|
    before("seed global state", () => {
 | 
						|
      cy.task("getGlobalState").then((state) => {
 | 
						|
        globalState = new State(state);
 | 
						|
      });
 | 
						|
    });
 | 
						|
 | 
						|
    after("flush global state", () => {
 | 
						|
      cy.task("setGlobalState", globalState.data);
 | 
						|
    });
 | 
						|
 | 
						|
    it("User login", () => {
 | 
						|
      cy.userLogin(globalState);
 | 
						|
      cy.terminate2Fa(globalState);
 | 
						|
      cy.userInfo(globalState);
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  context("Fetch MCA Ids", () => {
 | 
						|
    before("seed global state", () => {
 | 
						|
      cy.task("getGlobalState").then((state) => {
 | 
						|
        globalState = new State(state);
 | 
						|
      });
 | 
						|
    });
 | 
						|
 | 
						|
    after("flush global state", () => {
 | 
						|
      cy.task("setGlobalState", globalState.data);
 | 
						|
    });
 | 
						|
 | 
						|
    it("List MCA call", () => {
 | 
						|
      cy.mcaListCall(globalState, "routing");
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  context("Routing APIs", () => {
 | 
						|
    before("seed global state", () => {
 | 
						|
      cy.task("getGlobalState").then((state) => {
 | 
						|
        globalState = new State(state);
 | 
						|
      });
 | 
						|
    });
 | 
						|
 | 
						|
    after("flush global state", () => {
 | 
						|
      cy.task("setGlobalState", globalState.data);
 | 
						|
    });
 | 
						|
 | 
						|
    it("Routing algorithm create call", () => {
 | 
						|
      const adyen_merchant_connector_id =
 | 
						|
        globalState.data.adyenMerchantConnectorId;
 | 
						|
      const bluesnap_merchant_connector_id =
 | 
						|
        globalState.data.bluesnapMerchantConnectorId;
 | 
						|
      const stripe_merchant_connector_id =
 | 
						|
        globalState.data.stripeMerchantConnectorId;
 | 
						|
 | 
						|
      // Fetching the advanced config details
 | 
						|
      const advanced_config_details =
 | 
						|
        utils.getServiceDetails("advanced_configs");
 | 
						|
      // setting the merchant connector ids in the payload
 | 
						|
      // defaultSelection data
 | 
						|
      advanced_config_details[
 | 
						|
        "data"
 | 
						|
      ].defaultSelection.data[0].merchant_connector_id =
 | 
						|
        adyen_merchant_connector_id;
 | 
						|
      // rules data
 | 
						|
      // rule 1
 | 
						|
      advanced_config_details[
 | 
						|
        "data"
 | 
						|
      ].rules[0].connectorSelection.data[0].merchant_connector_id =
 | 
						|
        stripe_merchant_connector_id;
 | 
						|
      advanced_config_details[
 | 
						|
        "data"
 | 
						|
      ].rules[0].connectorSelection.data[1].merchant_connector_id =
 | 
						|
        bluesnap_merchant_connector_id;
 | 
						|
      // rule 2
 | 
						|
      advanced_config_details[
 | 
						|
        "data"
 | 
						|
      ].rules[1].connectorSelection.data[0].merchant_connector_id =
 | 
						|
        adyen_merchant_connector_id;
 | 
						|
 | 
						|
      const payload = {
 | 
						|
        name: advanced_config_details["name"],
 | 
						|
        data: advanced_config_details["data"],
 | 
						|
        description: advanced_config_details["description"],
 | 
						|
      };
 | 
						|
      const type = "advanced";
 | 
						|
 | 
						|
      cy.routingSetupCall(fixtures.routing_create, type, payload, globalState);
 | 
						|
    });
 | 
						|
    it("Routing algorithm activate call", () => {
 | 
						|
      cy.routingActivateCall(fixtures.routing_activate, globalState);
 | 
						|
    });
 | 
						|
    it("Routing algorithm activation retrieve call", () => {
 | 
						|
      cy.routingActivationRetrieveCall(globalState);
 | 
						|
    });
 | 
						|
    it("Routing algorithm deactivate call", () => {
 | 
						|
      cy.routingDeactivateCall(globalState);
 | 
						|
    });
 | 
						|
    it("Routing algorithm retrieve call", () => {
 | 
						|
      cy.routingRetrieveCall(globalState);
 | 
						|
    });
 | 
						|
    it("Routing algorithm default fallback update call", () => {
 | 
						|
      //fallback_config_details
 | 
						|
      const payload = utils.getServiceDetails("fallback_configs");
 | 
						|
 | 
						|
      cy.routingDefaultFallbackCall(
 | 
						|
        fixtures.default_fallback_update,
 | 
						|
        payload,
 | 
						|
        globalState
 | 
						|
      );
 | 
						|
    });
 | 
						|
    it("Routing algorithm fallback retrieve call", () => {
 | 
						|
      cy.routingFallbackRetrieveCall(globalState);
 | 
						|
    });
 | 
						|
  });
 | 
						|
});
 |