Пример #1
0
        public PaymentSettings CreatePaymentSettings(Core.Brand.Interface.Data.Brand brand, PaymentType type, string vipLevel, PaymentSettingsValues settings)
        {
            var model = new SavePaymentSettingsCommand
            {
                Id                      = Guid.NewGuid(),
                Licensee                = brand.Licensee.Id,
                Brand                   = brand.Id,
                PaymentType             = type,
                PaymentGatewayMethod    = PaymentMethod.OfflineBank,
                PaymentMethod           = PaymentMethodDto.OfflinePayMethod,
                Currency                = brand.BrandCurrencies.First().CurrencyCode,
                VipLevel                = vipLevel,
                MinAmountPerTransaction = settings.MinAmountPerTransaction,
                MaxAmountPerTransaction = settings.MaxAmountPerTransaction,
                MaxTransactionPerDay    = settings.MaxTransactionsPerDay,
                MaxTransactionPerWeek   = settings.MaxTransactionsPerWeek,
                MaxTransactionPerMonth  = settings.MaxTransactionsPerMonth
            };

            var paymentSettingsId = _paymentSettingsCommands.AddSettings(model);

            var ps =
                _paymentRepository.PaymentSettings
                .Single(x => x.Id == paymentSettingsId);

            _paymentSettingsCommands.Enable(ps.Id, "remark");
            return(ps);
        }
Пример #2
0
        //TODO: VladS  AFTREGO-4540, Igor, 08-April-2016
        public void Can_change_vip_level_of_player_and_view_new_payment_settings_are_applied()
        {
            var brandTestHelper   = _container.Resolve <BrandTestHelper>();
            var paymentTestHelper = _container.Resolve <PaymentTestHelper>();
            var playerTestHelper  = _container.Resolve <PlayerTestHelper>();
            var defaultLicenseeId = brandTestHelper.GetDefaultLicensee();

            //create a brand for a default licensee
            var brand = brandTestHelper.CreateBrand(defaultLicenseeId, null, null, null, true);

            paymentTestHelper.CreatePaymentSettings(brand, PaymentType.Deposit);

            // create a player with a bound bank account for a brand
            var player = playerTestHelper.CreatePlayer(true, brand.Id);

            Thread.Sleep(5000);
            var playerUsername = player.Username;

            paymentTestHelper.CreatePlayerBankAccount(player.Id, DefaultBrandId, true);
            var defaultVipLevel = player.VipLevel;

            // create second brand's vip level and payment settings based on it
            var secondVipLevel = brandTestHelper.CreateVipLevel(brand.Id, isDefault: false);
            var settings       = new PaymentSettingsValues
            {
                MinAmountPerTransaction = 5,
                MaxAmountPerTransaction = 9
            };
            var paymentSettingsForSecondVipLevel = paymentTestHelper.CreatePaymentSettings(brand, PaymentType.Deposit, secondVipLevel.Id.ToString(), settings);

            _paymentSettingsCommands.Disable(paymentSettingsForSecondVipLevel.Id, "remark");

            //login to admin website, select to display the custom brand
            _driver.Logout();
            _dashboardPage = _driver.LoginToAdminWebsiteAsSuperAdmin();
            _dashboardPage.BrandFilter.SelectAll();

            //make offline deposit and check the relevant payment settings are applied for player
            _playerManagerPage = _dashboardPage.Menu.ClickPlayerManagerMenuItem();
            _playerManagerPage.SelectPlayer(playerUsername);
            var offlineDepositRequestForm = _playerManagerPage.OpenOfflineDepositRequestForm();

            const decimal depositAmount = 10;
            var           submittedOfflineDepositRequest = offlineDepositRequestForm.Submit(depositAmount);

            Assert.AreEqual("Offline deposit request has been created successfully", submittedOfflineDepositRequest.Confirmation);
            submittedOfflineDepositRequest.CloseTab("View Offline Deposit Request");

            //deactivate the default vip level and make the second vip level default
            var vipLevelManagerPage      = _playerManagerPage.Menu.ClickVipLevelManagerMenuItem();
            var deactivateVipLevelDialog = vipLevelManagerPage.OpenDeactivateDialog(defaultVipLevel.Name, true);

            vipLevelManagerPage = deactivateVipLevelDialog.Deactivate();

            //change the vip level of the player
            _playerManagerPage = vipLevelManagerPage.Menu.ClickPlayerManagerMenuItem();
            var playerInfoPage = _playerManagerPage.OpenPlayerInfoPage(playerUsername);

            playerInfoPage.OpenAccountInformationSection();
            //_driver.Manage().Window.Maximize();
            var changeVipLevelDialog = playerInfoPage.OpenChangeVipLevelDialog();

            changeVipLevelDialog.Submit(secondVipLevel.Name);
            playerInfoPage.CloseTab("Player Info");

            //enable payment settings for second vip level
            _paymentSettingsCommands.Enable(paymentSettingsForSecondVipLevel.Id, "remark");

            //try to make deposit again
            _playerManagerPage.SelectPlayer(playerUsername);
            var secondOfflineDepositRequestForm = _playerManagerPage.OpenOfflineDepositRequestForm();

            secondOfflineDepositRequestForm.TryToSubmit(depositAmount);

            //TODO: VladS Payment settings applied but message doesn't show up.
            //Assert.That(offlineDepositRequestForm.ErrorMessage, Is.StringContaining("Deposit failed. The entered amount exceeds the allowed value. Maximum value is 9.00."));
        }