Example #1
0
        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 override bool CompareTargetDataToDb(string key, string fileName = null, Table tableData = null,
                                                   TestDataResultOperationType operationType = default)
        {
            var featureTestData = GenerateDataFromTable(tableData);
            var fileTestData    = GenerateDataFromFile(fileName, key);
            var dayPartGroups   = _standardDayPartGroupRepository.GetAll().ToList();

            switch (operationType)
            {
            case TestDataResultOperationType.Add:
            {
                featureTestData.AddRange(fileTestData);
                return(dayPartGroups.Count == featureTestData.Count && featureTestData.All(entity => dayPartGroups.Count(c => AreSameDayPartGroups(c, entity)) == 1));
            }

            case TestDataResultOperationType.Remove:
            case TestDataResultOperationType.Replace:
                return(true);

            default:
                return(false);
            }
        }
Example #3
0
        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 programmeCategories = _programmeCategoryRepository.GetAll().ToList();

            switch (operationType)
            {
            case TestDataResultOperationType.Add:
            {
                featureTestData.AddRange(fileTestData);
                return(programmeCategories.Count == featureTestData.Count && featureTestData.All(entity => programmeCategories.Count(c => c.Name == entity.Name) == 1));
            }

            case TestDataResultOperationType.Remove:
            case TestDataResultOperationType.Replace:
                return(true);

            default:
                return(false);
            }
        }
Example #4
0
        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 allClashes      = _clashRepository.GetAll().ToList();

            switch (operationType)
            {
            case TestDataResultOperationType.Add:
            {
                featureTestData.AddRange(fileTestData);
                if (allClashes.Count != featureTestData.Count)
                {
                    return(false);
                }

                foreach (var entity in featureTestData)
                {
                    if (allClashes.Count(c => c.Externalref == entity.Externalref) != 1)
                    {
                        return(false);
                    }

                    var storedClash = allClashes.FirstOrDefault(c => c.Externalref == entity.Externalref);
                    if (!CompareClash(entity, storedClash))
                    {
                        return(false);
                    }
                }
                return(true);
            }

            default:
                return(false);
            }
        }
Example #5
0
        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 metadataFromDb  = _metadataRepository.GetAll();

            switch (operationType)
            {
            case TestDataResultOperationType.Add:
            {
                featureTestData.AddRange(fileTestData);
                var metadataFromFile = featureTestData.First().ToMetadataModel();
                return(AreSameMetadata(metadataFromFile, metadataFromDb));
            }

            case TestDataResultOperationType.Remove:
            case TestDataResultOperationType.Replace:
                return(true);

            default:
                return(false);
            }
        }
Example #6
0
        public override bool CompareTargetDataToDb(string key, string fileName = null, Table tableData = null, TestDataResultOperationType operationType = 0)
        {
            var dataFromTable = GenerateDataFromTable(tableData).ToList();
            var dataFromFile  = GenerateDataFromFile(fileName, key).ToList();

            var lengthFactors = _repository.GetAll().ToList();

            switch (operationType)
            {
            case TestDataResultOperationType.Add:
            {
                dataFromTable.AddRange(dataFromFile);

                if (lengthFactors.Count != dataFromTable.Count)
                {
                    return(false);
                }

                return(dataFromTable.All(entity => lengthFactors.Count(x => AreSame(x, entity)) == 1));
            }

            case TestDataResultOperationType.Remove:
            case TestDataResultOperationType.Replace:
                return(true);

            default: return(false);
            }
        }
Example #7
0
 public abstract bool CompareTargetDataToDb(string key, string fileName = null, Table tableData = null,
                                            TestDataResultOperationType operationType = default);