예제 #1
0
        public void Recv_ValidationUntilReadyForCommit()
        {
            var sendRequest = new SendRequest
            {
                AgentState = AgentLocation.MN,
                Country    = Country.Usa,
                State      = State.Ny,
                SendCurr   = Currency.Usd,
                AmtRange   = AmountRange.NoIdsNoThirdParty,
                FeeType    = ItemChoiceType1.amountExcludingFee
            };

            sendRequest.PopulateAgentData(sendRequest.AgentState);
            var sendData       = new SendData(sendRequest);
            var receiveRequest = new ReceiveRequest
            {
                AgentState     = AgentLocation.NY,
                ThirdPartyType = TestThirdPartyType.None
            };

            receiveRequest.PopulateAgentData(receiveRequest.AgentState);

            var receiveData = new ReceiveData(receiveRequest);

            SendOperations.SendCompleteForNewCustomer(sendData);
            receiveData.Set(sendData);
            ReceiveOperations.ValidateUntilReadyForCommitForReceive(receiveData);

            var receiveValidationResponse = receiveData.ReceiveValidationResponses?.FirstOrDefault();

            // ASSERT ALL THE THINGS
            Assert.IsFalse(sendData.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{sendData.Errors?.Log()}");
            Assert.IsTrue(receiveValidationResponse != null && receiveValidationResponse.Payload.ReadyForCommit);
        }
예제 #2
0
        public void Recv_Complete()
        {
            var sendRequest = new SendRequest
            {
                AgentState = AgentLocation.MN,
                Country    = Country.Usa,
                State      = State.Ny,
                SendCurr   = Currency.Usd,
                AmtRange   = AmountRange.NoIdsNoThirdParty,
                FeeType    = ItemChoiceType1.amountExcludingFee
            };

            sendRequest.PopulateAgentData(sendRequest.AgentState);
            var sendData       = new SendData(sendRequest);
            var receiveRequest = new ReceiveRequest
            {
                AgentState     = AgentLocation.NY,
                ThirdPartyType = TestThirdPartyType.None
            };

            receiveRequest.PopulateAgentData(receiveRequest.AgentState);

            var receiveData = new ReceiveData(receiveRequest);

            sendData = SendOperations.SendCompleteForNewCustomer(sendData);
            receiveData.Set(sendData);
            receiveData = ReceiveOperations.ReceiveComplete(receiveData);
            var transLookupResponse = TranLookupOperations.TransactionLookupForStatus(receiveRequest.AgentId, receiveRequest.AgentPos, receiveData.CompleteSessionResponse.Payload.ReferenceNumber);

            // ASSERT ALL THE THINGS
            Assert.IsFalse(sendData.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{sendData.Errors?.Log()}");
            Assert.IsFalse(receiveData.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{sendData.Errors?.Log()}");
            Assert.IsTrue(transLookupResponse.TransactionLookupResp.Payload.TransactionStatus == TransactionStatusType.RECVD);
        }
예제 #3
0
        public void TestSetup()
        {
            var testRunner = new TestRunner();

            ReceiveOperations    = new ReceiveOperations(testRunner);
            SendOperations       = new SendOperations(testRunner);
            TranLookupOperations = new TransactionLookupOperations(testRunner);
        }
 /// <summary>
 ///     Constructor.
 /// </summary>
 /// <param name="messageBus">Message bus used to publish results</param>
 /// <param name="stagedReceiveViewModel">Send parameter view model needed to create transaction</param>
 /// <param name="agentSelector">agent parameter view model needed to create transaction</param>
 /// <param name="sendOperations">Send operations parameter</param>
 public StagedReceiveHandler(IMessageBus messageBus, IStagedReceiveViewModel stagedReceiveViewModel,
                             IAgentSelectorViewModel agentSelector, SendOperations sendOperations, ReceiveOperations receiveOperations)
 {
     SendOperations          = sendOperations;
     ReceiveOperations       = receiveOperations;
     _messageBus             = messageBus;
     _stagedReceiveViewModel = stagedReceiveViewModel;
     _agentSelector          = agentSelector;
 }
        public void TestSetup()
        {
            var testRunner = new TestRunner();

            receiveReversalOperations = new ReceiveReversalOperations(testRunner);
            _sendOperations           = new SendOperations(testRunner);
            _recvOperations           = new ReceiveOperations(testRunner);
            _tranLookupOperations     = new TransactionLookupOperations(testRunner);
        }
예제 #6
0
        public void Recv_StageReceive_SmallAmount_NewCustomer()
        {
            var sendRequest = new SendRequest
            {
                AgentState     = AgentLocation.MN,
                Country        = Country.Usa,
                State          = State.Ny,
                SendCurr       = Currency.Usd,
                AmtRange       = AmountRange.UnderOneHundred,
                FeeType        = ItemChoiceType1.amountExcludingFee,
                ThirdPartyType = TestThirdPartyType.None
            };

            sendRequest.PopulateAgentData(sendRequest.AgentState);

            var sendData = new SendData(sendRequest);

            sendData = SendOperations.SendCompleteForNewCustomer(sendData);
            var receiveRequest = new ReceiveRequest()
            {
                AgentState     = AgentLocation.NY,
                ThirdPartyType = TestThirdPartyType.None
            };

            receiveRequest.PopulateAgentData(receiveRequest.AgentState);
            var receiveData = new ReceiveData(receiveRequest);

            receiveData.Set(sendData);

            receiveData = ReceiveOperations.ReceiveCompleteStaged(receiveData);
            receiveData = ReceiveOperations.TransactionLookupForReceiveCompletion(receiveData);

            // ASSERT ALL THE THINGS
            Assert.IsFalse(sendData.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{sendData.Errors?.Log()}");
            Assert.IsFalse(receiveData.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{sendData.Errors?.Log()}");
            Assert.IsFalse(receiveData.TransactionLookupResponse.Errors.Any(), $" {Environment.NewLine}Errors: {Environment.NewLine}{receiveData.TransactionLookupResponse.Errors?.Log()}");
            Assert.IsTrue(receiveData.TransactionLookupResponse.Payload.TransactionStatus == TransactionStatusType.AVAIL);
        }