Ejemplo n.º 1
0
        public void TestSetup()
        {
            var testRunner = new TestRunner();

            amendOperations = new AmendOperations(testRunner);
            sendOperations  = new SendOperations(testRunner);
        }
Ejemplo n.º 2
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="messageBus">used to publish results</param>
 /// <param name="sendParameters"></param>
 /// <param name="agentSelector"></param>
 /// <param name="amendOperations"></param>
 /// <param name="sendOperations"></param>
 public AmendHandler(IMessageBus messageBus, ISendParametersViewModel sendParameters,
                     IAgentSelectorViewModel agentSelector, AmendOperations amendOperations, SendOperations sendOperations)
 {
     AmendOperations = amendOperations;
     SendOperations  = sendOperations;
     _messageBus     = messageBus;
     _agentSelector  = agentSelector;
     _sendParameters = sendParameters;
 }
Ejemplo n.º 3
0
        /// <summary>
        ///     Run this transaction
        /// </summary>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public override ITransactionResult Transaction(object parameters)
        {
            var sendParameters = (SendParameters)parameters;

            TestConfig.TestSettings = new IntegrationTestSettingsModel {
                AcEnvironment = sendParameters.Environment
            };

            var amtRangeParsed       = Enum.TryParse(sendParameters?.AmtRange, true, out AmountRange amtRange);
            var itemChoiceTypeParsed = Enum.TryParse(sendParameters?.FeeType, true, out ItemChoiceType1 itemChoiceType);
            var sendRequest          = new SendRequest
            {
                Environment         = sendParameters.Environment,
                AgentCountryIsoCode = sendParameters.AgentCountryIsoCode,
                AgentId             = sendParameters.AgentId,
                AgentPos            = sendParameters.AgentPos,
                AgentState          = sendParameters.GetAgentState(),
                Amount         = (double)sendParameters.CustomAmount,
                AmtRange       = amtRangeParsed ? amtRange : AmountRange.CustomAmount,
                Country        = sendParameters.Country,
                State          = sendParameters.State,
                FeeType        = itemChoiceTypeParsed ? itemChoiceType : ItemChoiceType1.amountExcludingFee,
                SendCurr       = sendParameters.SendCurr,
                ServiceOption  = sendParameters.ServiceOption,
                ThirdPartyType = sendParameters.ThirdPartyType
            };
            var sendData = new SendData(sendRequest);

            sendData = SendOperations.SendCompleteForExistingCustomer(sendData);

            var referenceNumber = sendData?.CompleteSessionResp?.Payload?.ReferenceNumber;

            var amendRequest = new AmendOperationRequest
            {
                AgentState      = sendParameters.AgentState,
                ReferenceNumber = referenceNumber
            };

            amendRequest.PopulateAgentData(sendParameters.AgentState);
            var amendData = new AmendData(amendRequest);

            amendData.Set(sendData);
            AmendOperations.AmendComplete(amendData);

            return(new TransactionResult {
                Result = amendData
            });
        }