Example #1
0
        public void Can_not_reject_rejected_online_deposit()
        {
            //Arrange
            var deposit = _paymentTestHelper.CreateOnlineDeposit(_testPlayer.Id, 300);

            _paymentTestHelper.RejectOnlineDeposit(deposit.Id);

            var request = new RejectOnlineDepositRequest
            {
                Id      = deposit.Id,
                Remarks = "remark"
            };

            //Act
            //Assert
            Assert.Throws <RegoException>(() => _depositCommands.Reject(request))
            .Message.Should().Be("The deposit has 'Rejected' status, so it can't be Rejected");
        }
Example #2
0
        public void Can_reject_online_deposit()
        {
            //Arrange
            var deposit = _paymentTestHelper.CreateOnlineDeposit(_testPlayer.Id, 300);

            var request = new RejectOnlineDepositRequest
            {
                Id      = deposit.Id,
                Remarks = "verify remark"
            };

            //Act
            _depositCommands.Reject(request);

            //Assert
            var settings = _paymentRepositoryMock.OnlineDeposits.Single(x => x.Id == deposit.Id);

            settings.Status.Should().Be(OnlineDepositStatus.Rejected);
            settings.Remarks.Should().Be(request.Remarks);
            settings.RejectedBy.ShouldBeEquivalentTo(_actorInfoProvider.Actor.UserName);
            settings.Rejected.Should().BeCloseTo(DateTimeOffset.Now, 5000);
        }
Example #3
0
        public RejectOnlineDepositResponse Reject(RejectOnlineDepositRequest request)
        {
            if (false ==
                (_authQueries.VerifyPermission(UserId, Permissions.Reject, Modules.DepositVerification) ||
                 _authQueries.VerifyPermission(UserId, Permissions.Reject, Modules.DepositApproval)))
            {
                throw new HttpException(403, "Access forbidden");
            }

            var data = _onlineDepositQueries.GetOnlineDepositById(request.Id);

            CheckBrand(data.BrandId);

            var model = Mapper.Map <Core.Payment.Interface.Data.RejectOnlineDepositRequest>(request);

            _onlineDepositCommands.Reject(model);

            return(new RejectOnlineDepositResponse
            {
                Success = true
            });
        }
Example #4
0
        public void Reject(RejectOnlineDepositRequest request)
        {
            var onlineDeposit = _repository.OnlineDeposits.First(x => x.Id == request.Id);

            if (onlineDeposit == null)
            {
                throw new RegoException(DepositErrors.NotFound.ToString());
            }

            var onlineDepositEntity = new Entities.OnlineDeposit(onlineDeposit);

            var now = _paymentQueries.GetBrandDateTimeOffset(onlineDeposit.BrandId);

            var rejectedEvent = onlineDepositEntity.Reject(_actorInfoProvider.Actor.UserName, request.Remarks, now);

            using (var scope = CustomTransactionScope.GetTransactionScope())
            {
                _repository.SaveChanges();

                _eventBus.Publish(rejectedEvent);

                scope.Complete();
            }
        }
Example #5
0
 public RejectOnlineDepositResponse RejectOnlineDeposit(RejectOnlineDepositRequest request)
 {
     return(WebClient.SecurePostAsJson <RejectOnlineDepositRequest, RejectOnlineDepositResponse>(Token, _url + AdminApiRoutes.RejectOnlineDeposit, request));
 }