public void CreatePerformancePackage(PerformancePackage performancePackage) { WaitForLoaderSpinnerToDisappear(); if (performancePackage.IsAutomatedGuaranteedItem) { EnsureMandatoryValueForAGPackage(performancePackage); SetDetailTabDataForAg(performancePackage.DetailTabData); } else { EnsureMandatoryValuesAreProvided(performancePackage); SetDetailTabData(performancePackage.DetailTabData); } SetPlacementsTabData(performancePackage.PlacementsTabData); SetClassificationTabData(performancePackage.ClassificationsTabData); SetFlightingTabData(performancePackage.FlightingTabData); SetTrafficTabData(performancePackage.TrafficTabData); SetCostTabData(performancePackage.CostsTabData); SetForecastTabData(performancePackage.ForecastTabData); SetMoreTabData(performancePackage.MoreTabData); var purchaseType = ConvertToPurchaseTypeEnum(performancePackage.DetailTabData.PurchaseType); AddItem(performancePackage.IsAutomatedGuaranteedItem, purchaseType); WaitUntilAlertContains("All Done!"); }
private void EnsureMandatoryValuesAreProvided(PerformancePackage data) { var dataErrorFound = false; var dataErrors = new StringBuilder(); dataErrors.Append("The feature file " + FeatureContext.FeatureInfo.Title + " has the following data issues:"); if (string.IsNullOrWhiteSpace(data.DetailTabData.Name) && !data.DetailTabData.AutoGenerateName) { dataErrorFound = true; dataErrors.Append("\n- Performance package name not set and IsAutoGenerateName was false"); } if (string.IsNullOrWhiteSpace(data.DetailTabData.Publisher)) { dataErrorFound = true; dataErrors.Append("\n- Performance package publisher not set"); } if (string.IsNullOrWhiteSpace(data.DetailTabData.Site)) { dataErrorFound = true; dataErrors.Append("\n- Performance package site not set"); } foreach (var placement in data.PlacementsTabData.Placements) { if (string.IsNullOrWhiteSpace(placement.Location)) { dataErrorFound = true; dataErrors.Append("\n- Performance Placement location was not set"); } if (string.IsNullOrWhiteSpace(placement.Format)) { dataErrorFound = true; dataErrors.Append("\n- Performance Placement format was not set"); } } if (dataErrorFound) { throw new ArgumentException(dataErrors.ToString()); } }
private void EnsureMandatoryValueForAGPackage(PerformancePackage performancePackage) { }