public static string GetConfigFeature(string configSettingName, TestDataReserve testData, string hostNameKey = "CarBSUri", ConfigSettingType configType = ConfigSettingType.POS) { //create a configuration request data instance ConfigSettingRequestData configSettingRequestData = new ConfigSettingRequestData(hostNameKey, configType); configSettingRequestData.TUID = testData.tuid; string enableValue = null; // get the feature turned value from DB string envKey = ServiceConfigUtil.EnvNameGet(); ///1. mach as EnviromentName and POS's 3 values enableValue = CarBSDB.GetServiceConfig(configSettingName, envKey, testData.JurisdictionCountryCode, testData.CompanyCode, testData.ManagementUnitCode); if (enableValue == null) { ///2. if 1 is null, mach only with EnviromentName enableValue = CarBSDB.GetServiceConfig(configSettingName, envKey); if (enableValue == null) { ///3. if 2 is null, mach as EnviromentName is null enableValue = CarBSDB.GetServiceConfig(configSettingName); if (enableValue == null) { Assert.Fail("No enable feature value for " + configSettingName + "in DB,please check the DB."); } } } return(enableValue); }
// Common way to check the POS config setting value public static void CheckPosConfigFeatureEnable(string configSettingName, string expectedvalue, TestDataReserve testData, bool isUpdateIfNotMatch = false) { //create a configuration request data instance ConfigSettingRequestData configSettingRequestData = new ConfigSettingRequestData("CarBSUri", ConfigSettingType.POS); if (testData != null) { configSettingRequestData.TUID = testData.tuid; } string enableValue = null; // get the feature turned value from DB string envKey = ConfigurationManager.AppSettings["EnvironmentName"]; ///1. mach as EnviromentName and POS's 3 values if (testData != null) { enableValue = CarBSDB.GetServiceConfig(configSettingName, envKey, testData.JurisdictionCountryCode, testData.CompanyCode, testData.ManagementUnitCode); } if (enableValue != null) { // set configuration data by expectedValue where configName/envKey/JurisdictionCountryCode/CompanyCode/ManagementUnitCode have values configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: envKey, sName: configSettingName, sValue: expectedvalue , jCode: testData.JurisdictionCountryCode, cCode: testData.CompanyCode, mUnitCode: testData.ManagementUnitCode, cID: null, sID: null)); //mach value MachExpectedValueinDB(expectedvalue, enableValue, configSettingName, testData.tuid, isUpdateIfNotMatch, configSettingRequestData); } else { ///2. if 1 is null, mach only with EnviromentName enableValue = CarBSDB.GetServiceConfig(configSettingName, envKey); if (enableValue != null) { // set configuration data by expectedValue where configName/envKey have values configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: envKey, sName: configSettingName, sValue: expectedvalue , jCode: null, cCode: null, mUnitCode: null, cID: null, sID: null)); //mach value MachExpectedValueinDB(expectedvalue, enableValue, configSettingName, testData.tuid, isUpdateIfNotMatch, configSettingRequestData); } else { ///3. if 2 is null, mach as EnviromentName is null enableValue = CarBSDB.GetServiceConfig(configSettingName); if (enableValue != null) { // set configuration data by expectedValue where configNam have value configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: null, sName: configSettingName, sValue: expectedvalue , jCode: null, cCode: null, mUnitCode: null, cID: null, sID: null)); //mach value MachExpectedValueinDB(expectedvalue, enableValue, configSettingName, testData.tuid, isUpdateIfNotMatch, configSettingRequestData); } else { Assert.Fail("No enable feature value for " + configSettingName + "in DB,please check the DB."); } } } }
//Common way to check the POS config setting value public static void CheckPOSConfigFeatureEnable(string POSCode, string CompanyCode, string ManagementUnitCode, string configName, string expectedValue, bool null_envKey = false , string tuid = "0", bool isUpdateIfNotMatch = false) { //create a configuration request data instance ConfigSettingRequestData configSettingRequestData = new ConfigSettingRequestData("CarBSUri", ConfigSettingType.POS); configSettingRequestData.TUID = tuid; string envKey = null; if (!null_envKey) { envKey = ConfigurationManager.AppSettings["EnvironmentName"]; } string actualValue = null; ///1. mach as EnviromentName and ClientID actualValue = CarBSDB.GetPOSConfig(configName, envKey, POSCode, CompanyCode, ManagementUnitCode); if (actualValue != null) { // set configuration data by expectedValue where configName/envKey/POSCode/CompanyCode/ManagementUnitCode, have values configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: envKey, sName: configName, sValue: expectedValue , jCode: null, cCode: null, mUnitCode: null, cID: POSCode, sID: null)); //mach value MachExpectedValueinDB(expectedValue, actualValue, configName, tuid, isUpdateIfNotMatch, configSettingRequestData); } else { ///2. if 1 is null, mach with EnviromentName actualValue = CarBSDB.GetPOSConfig(configName, envKey); if (actualValue != null) { // set configuration data by expectedValue where configName/envKey have values configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: envKey, sName: configName, sValue: expectedValue , jCode: null, cCode: null, mUnitCode: null, cID: null, sID: null)); //mach value MachExpectedValueinDB(expectedValue, actualValue, configName, tuid, isUpdateIfNotMatch, configSettingRequestData); } else { ///3. if 2 is null, mach as EnviromentName is null actualValue = CarBSDB.GetPOSConfig(configName); if (actualValue != null) { // set configuration data by expectedValue where only configName have values configSettingRequestData.ConfigSettingDataAdd(new ConfigurationSettingData(env: null, sName: configName, sValue: expectedValue , jCode: null, cCode: null, mUnitCode: null, cID: null, sID: null)); MachExpectedValueinDB(expectedValue, actualValue, configName, tuid, isUpdateIfNotMatch, configSettingRequestData); } else { actualValue = "0"; MachExpectedValueinDB(expectedValue, actualValue, configName, tuid, isUpdateIfNotMatch, configSettingRequestData); } } } }
// EBL phase 2 for DB updated public void CarBSDBConfigurationSettingUpdate(string bookingItemID) { if (this.noRecord != null) { if (this.noRecord == EnableKey.Enable_on) { CarBSDB.RemovedEBLRecordByBooingItemID(bookingItemID); } } if (noPriceList != null) { if (this.noPriceList == EnableKey.Enable_on) { CarBSDB.RemovedEBLAllPriceList(bookingItemID); } } if (noTotalPrice != null) { // if the priceList be removed , then don't need remove total price if (this.noPriceList != EnableKey.Enable_on) { if (this.noTotalPrice == EnableKey.Enable_on) { CarBSDB.RemovedEBLTotalPriceInPriceList(bookingItemID); } } } // if record is exist , and then update policy if (noPolicyList != null && this.noRecord == null) { if (this.noPolicyList == EnableKey.Enable_on) { CarBSDB.RemovedAndUpdateEBLForPoliceList(bookingItemID); } } }