Exemplo n.º 1
0
        public void Can_approve_online_deposit()
        {
            //Arrange
            var deposit = _paymentTestHelper.CreateOnlineDeposit(_testPlayer.Id, 300);

            _paymentTestHelper.VerifyOnlineDeposit(deposit.Id);

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

            //Act
            _depositCommands.Approve(request);

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

            settings.Status.Should().Be(OnlineDepositStatus.Approved);
            settings.Remarks.Should().Be(request.Remarks);
            settings.ApprovedBy.ShouldBeEquivalentTo(_actorInfoProvider.Actor.UserName);
            settings.Approved.Should().BeCloseTo(DateTimeOffset.Now, 5000);

            _paymentTestHelper.AssertBalance(_testPlayer.Id, total: 300, playable: 300, main: 300, free: 300);
        }