Exemplo n.º 1
0
        private ComparisionResult Compare(ComparisionDataSet data)
        {
            var comparisionResult = new ComparisionResult(data.WorkItemType, data.Guid);

            if (CheckForDelete(data))
            {
                comparisionResult.OperationType = OperationType.Delete;
                comparisionResult.Result        = false;
                return(comparisionResult);
            }

            if (CheckForCreate(data))
            {
                comparisionResult.OperationType = OperationType.CreateNew;
                comparisionResult.Result        = false;
                return(comparisionResult);
            }

            if (CompareData(data.ActiveEntity, data.PreviousEntity))
            {
                comparisionResult.OperationType = OperationType.UseExisting;
                comparisionResult.Result        = true;
                return(comparisionResult);
            }

            return(new ComparisionResult
            {
                WorkItemType = data.WorkItemType,
                OperationType = OperationType.Update,
                Result = false,
                Guid = data.Guid
            });
        }
Exemplo n.º 2
0
        private void Compare()
        {
            if (_activeEAscenarios != null)
            {
                try
                {
                    foreach (var scenario in _activeEAscenarios)
                    {
                        var stepsResult           = new List <ComparisionResult>();
                        WorkItemComparer comparer = new WorkItemComparer();

                        var scenarioData = new ComparisionDataSet(
                            ComparerItemsFactory.MapToComparsionEntity(scenario),
                            ComparerItemsFactory.MapToComparsionEntity(
                                DbOperations.getEAscenario(scenario.PreviousVersionId)),
                            WorkItemType.TestCase,
                            scenario.Id);

                        var scenarioResult = comparer.GetComparisionResult(scenarioData);

                        var scenarioSteps = GetStepsForScenario(scenario);

                        if (scenarioSteps != null)
                        {
                            foreach (var step in scenarioSteps)
                            {
                                var stepData = new ComparisionDataSet(
                                    ComparerItemsFactory.MapToComparsionEntity(step),
                                    ComparerItemsFactory.MapToComparsionEntity(
                                        DbOperations.GetStep(step.PreviousVersionId)),
                                    WorkItemType.TestStep,
                                    step.Id);

                                var result = comparer.GetComparisionResult(stepData);

                                stepsResult.Add(result);
                            }
                        }

                        scenarioResult = AnalizeComparision(scenarioResult, stepsResult);
                        WorkItemDataSet.TestComparisionResults.Add(scenarioResult);
                    }
                }
                catch (Exception e)
                {
                    MessageBox.Show(
                        "W aplikacji wystąpił błąd!\n" + e, "Błąd!",
                        MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    throw;
                }
            }
        }
Exemplo n.º 3
0
 public bool CheckForCreate(ComparisionDataSet data)
 {
     return(data.ActiveEntity != null && data.PreviousEntity == null);
 }
Exemplo n.º 4
0
 private static bool CheckForDelete(ComparisionDataSet data)
 {
     return(data.ActiveEntity == null && data.PreviousEntity != null);
 }
Exemplo n.º 5
0
 public ComparisionResult GetComparisionResult(ComparisionDataSet data)
 {
     return(Compare(data));
 }
Exemplo n.º 6
0
 public WorkItemComparer(ComparisionDataSet data)
 {
     DataSet = data;
     Result  = Compare(DataSet);
 }