public override bool CompareTargetDataToDb(string key, string fileName = null, Table tableData = null, TestDataResultOperationType operationType = default) { var featureTestData = GenerateDataFromTable(tableData); var fileTestData = GenerateDataFromFile(fileName, key); var allBreaks = _breakRepository.GetAll().ToList(); switch (operationType) { case TestDataResultOperationType.Add: { featureTestData.AddRange(fileTestData); if (allBreaks.Count != featureTestData.Count) { return(false); } foreach (var entity in featureTestData) { if (allBreaks.Count(c => c.ExternalBreakRef == entity.ExternalBreakRef) != 1) { return(false); } var storedBreak = allBreaks.FirstOrDefault(c => c.ExternalBreakRef == entity.ExternalBreakRef); if (!CompareBreak(entity, storedBreak)) { return(false); } } var resultSchedules = TestDataImporter.GetDataFromFile <Schedule>(fileName, "Schedules").ToList(); var allSchedules = _scheduleRepository.GetAll().ToList(); if (allSchedules.Count != resultSchedules.Count) { return(false); } foreach (var schedule in resultSchedules) { var storedSchedule = allSchedules.FirstOrDefault(c => c.SalesArea == schedule.SalesArea && c.Date == schedule.Date); var storedRefs = storedSchedule.Breaks.Select(b => b.ExternalBreakRef).OrderBy(b => b); var targetRefs = schedule.Breaks.Select(b => b.ExternalBreakRef).OrderBy(b => b); if (!storedRefs.SequenceEqual(targetRefs)) { return(false); } } var resultSpots = TestDataImporter.GetDataFromFile <Schedule>(fileName, "Spots").ToList(); var allSpots = _spotRepository.GetAll(); return(allSpots.Count() == resultSpots.Count); } default: return(false); } }
public IEnumerable <BreakModel> Get() { var breaks = _breakRepository.GetAll(); if (breaks != null && breaks.Any()) { return(_mapper.Map <List <BreakModel> >(breaks.ToList())); } return(null); }
public Dictionary <string, int> Get() { var breakcount = _breakrepo.GetAll().Count(); var spotCountcount = _spotrepo.GetAll().Count(); var progcount = _programmerepo.GetAll().Count(); var campaigncount = _campaignrepo.GetAll().Count(); var productcount = _productRepository.GetAll().Count(); var clashcount = _clashRepository.GetAll().Count(); var items = new Dictionary <string, int> { { "Breaks", breakcount }, { "Spots", spotCountcount }, { "Programmes", progcount }, { "Campaigns", campaigncount }, { "Product", productcount }, { "Clash", clashcount } }; return(items); }