[Test]  //Only create Brand, assigne Country and create Bank for now 25-Jan-2016
        public void Can_add_and_activate_brand()
        {
            // create a brand
            const string licensee     = "Flycow";
            var          randomString = TestDataGenerator.GetRandomString(4);
            var          brandName    = "brand-" + randomString;
            var          brandCode    = randomString;
            var          playerPrefix = TestDataGenerator.GetRandomAlphabeticString(3);
            //TODO Support Currency for Brand before
            //const string bankAccountType = "Affiliate";
            const string brandType = "Credit";
            var          country   = TestDataGenerator.CountryNames;
            //TODO Support Currency
            //const string currency = "CAD";
            //TODO Support Language Manager
            //const string languageCode = "en-GB";
            TimeSpan _ts = DateTime.Now.TimeOfDay;

            var newBrandForm       = _brandManagerPage.OpenNewBrandForm();
            var submittedBrandForm = newBrandForm.Submit(brandName, brandCode, playerPrefix, brandType);

            Assert.AreEqual("The brand has been successfully created.", submittedBrandForm.ConfirmationMessage);
            Assert.AreEqual(licensee, submittedBrandForm.LicenseeValue);
            Assert.AreEqual(brandType, submittedBrandForm.BrandTypeValue);
            Assert.AreEqual(brandName, submittedBrandForm.BrandNameValue);
            Assert.AreEqual(brandCode, submittedBrandForm.BrandCodeValue);
            Assert.AreEqual(playerPrefix, submittedBrandForm.PlayerPrefix);
            submittedBrandForm.CloseTab("View Brand");

            _driver.Logout();
            _dashboardPage = _driver.LoginToAdminWebsiteAsSuperAdmin();
            _dashboardPage.BrandFilter.SelectAll();
            //_dashboardPage.BrandFilter.ClearAll();
            //_dashboardPage.BrandFilter.SelectLicense();
            _brandManagerPage = _dashboardPage.Menu.ClickBrandManagerItem();

            //TODO AFTREGO-4128 - VladK.
            //create wallet for brand
            //var walletTemplateListPage = _dashboardPage.Menu.ClickWalletManagerMenuItem();
            //var addWalletTemplateForm = walletTemplateListPage.OpenNewWalletForm();
            //var submittedAddWalletTemplateForm = addWalletTemplateForm.Submit(licensee, brandName);
            //Assert.AreEqual("The wallet has been successfully created", submittedAddWalletTemplateForm.ConfirmationMessage);
            //submittedAddWalletTemplateForm.CloseTab("View Wallet");

            // assign a country to the brand
            var supportedCountriesPage     = _brandManagerPage.Menu.ClickSupportedCountriesMenuItem();
            var assignCountryForm          = supportedCountriesPage.OpenAssignCountriesForm();
            var submittedAssignCountryForm = assignCountryForm.AssignCountries(licensee, brandName, country);

            Assert.AreEqual("The countries have been successfully assigned", submittedAssignCountryForm.ConfirmationMessage);
            submittedAssignCountryForm.CloseTab("View Assigned Countries");

            //TODO AFTREGO-4096 - VladS.
            // assign a currency to the brand
            //var supportedCurrenciesPage = submittedAssignCurrencyForm.Menu.ClickSupportedCurrenciesMenuItem();
            //var assignCurrencyForm = supportedCurrenciesPage.OpenAssignCurrencyForm();
            //var submittedAssignedCurrencyForm = assignCurrencyForm.Submit(licensee, brandName, currency);
            //Assert.AreEqual("The currencies have been successfully assigned", submittedAssignedCurrencyForm.ConfirmationMessage);
            //submittedAssignedCurrencyForm.CloseTab("View Assigned Currencies");

            //TODO AFTREGO-4130 - VladS.
            //// assign a language to the brand
            //var supportedLanguagesPage = submittedAssignedCurrencyForm.Menu.ClickSupportedLanguagesMenuItem();
            //var assignLanguageForm = supportedLanguagesPage.OpenAssignLanguageForm();

            //var submittedAssignedLanguageForm = assignLanguageForm.Submit(licensee, brandName, languageCode);

            //Assert.AreEqual("The languages have been successfully assigned", submittedAssignedLanguageForm.ConfirmationMessage);

            //TODO AFTREGO-4127 - VladK.
            // assign a product
            //var supportedProductsPage = submittedAssignedLanguageForm.Menu.ClickSupportedProductsMenuItem();
            //var assignProductForm = supportedProductsPage.OpenManageProductsPage();
            //var submittedAssignProductsForm = assignProductForm.AssignProducts(licensee, brandName, new[] {"Mock Casino"});
            //Assert.AreEqual("The products have been successfully assigned", submittedAssignProductsForm.Confirmation);
            //submittedAssignProductsForm.CloseTab("View Assigned Products");

            // create a bank for the brand
            var bankId   = randomString;
            var bankName = "bankName" + randomString;
            //submittedAssignProductsForm.Menu.ClickBanksItem();
            var banksManagerPage  = _dashboardPage.Menu.ClickBanksItem();
            var newBankForm       = banksManagerPage.OpenNewBankForm();
            var submittedBankForm = newBankForm.SubmitWithLicensee(licensee, brandName, bankId, bankName, country[1], remarks: "new bank");

            submittedBankForm.CloseTab("View");

            // create a bank account for the brand
            //var bankAccountId = "bankaccountID_" + randomString;
            //var bankAccountNumber = "bankAccountNumber";
            //var bankAccountName = "bankAccountName_" + randomString;
            //var province = "province-" + randomString;
            //var branch = "branch-" + randomString;

            //var supplierName = "Supplier Name " + TestDataGenerator.GetRandomAlphabeticString(8);
            //var contactNumber = TestDataGenerator.GetRandomNumber(12222222, 10000000);
            //var usbCode = "USBcode_-" + randomString;

            //var bankAccountsManagerPage = banksManagerPage.Menu.ClickBankAccountsItem();
            //var newBankAccountForm = bankAccountsManagerPage.OpenNewBankAccountForm();
            //var submittedBankAccountForm = newBankAccountForm.SubmitWithLicensee(licensee, brandName, currency, bankAccountId, bankAccountName, bankAccountNumber,
            //     province, branch, bankAccountType, supplierName, contactNumber, usbCode);
            //submittedBankAccountForm.CloseTab("View Bank Account");

            //bankAccountsManagerPage = _dashboardPage.Menu.ClickBankAccountsItem();
            //var activateDialog = bankAccountsManagerPage.OpenActivateBankAccountDialog(bankAccountName);
            //var confirmDialog = activateDialog.ActivateBankAccount(remark:"activated");
            //bankAccountsManagerPage = confirmDialog.Close();

            // create Default payment level for the brand
            //var paymentLevelCode = "pl" + randomString;
            //var paymentLevelName = "payment-level" + randomString;
            //var paymentLevelsPage = bankAccountsManagerPage.Menu.ClickPaymentLevelsMenuItem();
            //var newPaymentLevelForm = paymentLevelsPage.OpenNewPaymentLevelForm();
            //var submittedPaymentLevelForm = newPaymentLevelForm.Submit(brandName, paymentLevelCode, paymentLevelName, bankAccountId);
            //Assert.AreEqual("The payment level has been created.", submittedPaymentLevelForm.ConfirmationMessage);
            //submittedPaymentLevelForm.CloseTab("View Payment Level");

            // create Default vip level for the brand
            //var vipLevelData = TestDataGenerator.CreateValidVipLevelData(licensee, brandName, defaultForNewPlayers:true);

            //var vipLevelManagerPage = paymentLevelsPage.Menu.ClickVipLevelManagerMenuItem();
            //var newVipLevelForm = vipLevelManagerPage.OpenNewVipLevelForm();
            //newVipLevelForm.EnterVipLevelDetails(vipLevelData);
            //var submittedVipLevelForm = newVipLevelForm.Submit();

            //Assert.AreEqual("VIP Level has been created successfully.", submittedVipLevelForm.ConfirmationMessage);

            //create a risk level for the brand
            //var fraudManagerPage = vipLevelManagerPage.Menu.OpenFraudManager();

            //var Code = (_ts.Milliseconds + 1000 * (_ts.Seconds + 60 * (_ts.Minutes + 60 * _ts.Hours))).ToString();
            //var Name = "Name_" + TestDataGenerator.GetRandomAlphabeticString(5);
            //var Remarks = "remarks_new FRL";

            //generate auto verification configuration form data
            //FraudRiskLevelData data = TestDataGenerator.CreateFraudRiskLevelData(
            //    licensee,
            //    brandName,
            //    Code,
            //    Name,
            //    Remarks
            //    );

            //fraudManagerPage = _dashboardPage.Menu.OpenFraudManager();
            //var _newFRLform = fraudManagerPage.OpenNewFraudRiskLevelForm();
            //_newFRLform.SetFraudRiskLevelFields(data);
            //var viewFRLForm = _newFRLform.SubmitFraudRiskLevel();
            //Assert.AreEqual("The Fraud Risk Level has been successfully created", viewFRLForm.SuccessAlert.Text);
            //viewFRLForm.CloseTab("View Fraud Risk Level");
            //viewFRLForm.CloseTab("Fraud Manager");

            //TODO AFTREGO-4127, 4128 - VladK.
            //activate the Brand
            //_brandManagerPage = fraudManagerPage.Menu.ClickBrandManagerItem();
            //var brandActivateDialog = _brandManagerPage.OpenBrandActivateDialog(brandName);
            //var brandActivatedConfirmDialog = brandActivateDialog.Activate("activated");
            //Assert.AreEqual("This brand has been successfully activated.", brandActivatedConfirmDialog.ConfirmationMessage);
            //brandActivatedConfirmDialog.Close();

            //check the Brand satus
            //Assert.IsTrue(_brandManagerPage.HasActiveStatus(brandName));
        }