Ejemplo n.º 1
0
        public void UsesComparison(IComparison comparison)
        {
            var memberPath = GetMemberPath(_memberExpression);

            memberPath = String.Join(".", new [] { _rootType.Name, memberPath }.Where(x => !string.IsNullOrEmpty(x)));
            _memberConfigurationContext.ConfigureMember(new AbsolutePathMemberComparison(comparison, _rootType, memberPath));
        }
Ejemplo n.º 2
0
        public override void Compare(IComparison <IParameter> comparison)
        {
            if (!ShouldCompareParametersIn(comparison))
            {
                return;
            }

            _quantityDiffBuilder.Compare(comparison);
            CompareValues(x => x.BuildMode, x => x.BuildMode, comparison);

            if (shouldCompareRHSFormula(comparison))
            {
                _objectComparer.Compare(comparison.ChildComparison(x => x.RHSFormula));
            }
            else
            {
                CompareValues(x => x.RHSFormula != null, Captions.Diff.IsStateVariable, comparison);
            }

            if (comparison.Settings.OnlyComputingRelevant)
            {
                return;
            }

            CompareValues(x => x.Visible, x => x.Visible, comparison);
        }
Ejemplo n.º 3
0
 public override void Compare(IComparison <IEventAssignmentBuilder> comparison)
 {
     _entityDiffBuilder.Compare(comparison);
     CompareValues(x => x.UseAsValue, x => x.UseAsValue, comparison);
     CompareValues(x => x.Dimension, x => x.Dimension, comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
 }
Ejemplo n.º 4
0
 protected override void Context()
 {
     _settings   = new ComparerSettings();
     _parameter1 = DomainHelperForSpecs.ConstantParameterWithValue(visible: true);
     _parameter2 = DomainHelperForSpecs.ConstantParameterWithValue(visible: true);
     _comparison = new Comparison <IParameter>(_parameter1, _parameter2, _settings, new DiffReport(), null);
 }
Ejemplo n.º 5
0
 public ComplexObjectComparer(IComparison inner, bool ignoreUnmatchedProperties, List <Func <PropertyReader, bool> > ignoredProperties)
 {
     this.inner = inner;
     this.ignoreUnmatchedProperties = ignoreUnmatchedProperties;
     this.ignoredProperties         = ignoredProperties;
     results = new List <ComparisonResult>();
 }
Ejemplo n.º 6
0
        private async void RunComparison(Bitmap image, IComparison comparison, string comparisonName)
        {
            StartProcessing(comparisonName);
            await LoadResultsAsync(image, comparison);

            StopProcessing();
        }
 public override void Compare(IComparison <ChartSettings> comparison)
 {
     CompareValues(x => x.BackColor, x => x.BackColor, comparison);
     CompareValues(x => x.DiagramBackColor, x => x.DiagramBackColor, comparison);
     CompareValues(x => x.LegendPosition, x => x.LegendPosition, comparison);
     CompareValues(x => x.SideMarginsEnabled, x => x.SideMarginsEnabled, comparison);
 }
Ejemplo n.º 8
0
 public override void Compare(IComparison <RandomPopulationSettings> comparison)
 {
     CompareValues(x => x.BaseIndividual.Name, PKSimConstants.UI.BasedOnIndividual, comparison);
     CompareValues(x => x.NumberOfIndividuals, PKSimConstants.UI.NumberOfIndividuals, comparison);
     _enumerableComparer.CompareEnumerables(comparison, x => x.GenderRatios, x => x.Gender);
     _enumerableComparer.CompareEnumerables(comparison, x => x.ParameterRanges, x => x.ParameterDisplayName);
 }
Ejemplo n.º 9
0
 public ComplexObjectComparer(IComparison inner, bool ignoreUnmatchedProperties, List<Func<PropertyReader, bool>> ignoredProperties)
 {
     this.inner = inner;
     this.ignoreUnmatchedProperties = ignoreUnmatchedProperties;
     this.ignoredProperties = ignoredProperties;
     results = new List<ComparisonResult>();
 }
 public override void Compare(IComparison <OriginData> comparison)
 {
     CompareValues(x => x.Species, PKSimConstants.UI.Species, comparison, Equals, (o, s) => s.DisplayName);
     CompareValues(x => x.Population, PKSimConstants.UI.Population, comparison, Equals, (o, p) => p.DisplayName);
     //Gender can be undefined when comparing different species
     CompareValues(x => x.Gender, PKSimConstants.UI.Gender, comparison, Equals, (o, g) => g?.DisplayName);
 }
Ejemplo n.º 11
0
        public static void ShouldDeepEqual(this object actual, object expected, IComparison comparison, bool recursionProtection = true)
        {
            var context = new ComparisonContext {
                RecursionProtection = recursionProtection
            };

            var result = comparison.Compare(context, actual, expected);

            if (result != ComparisonResult.Fail)
            {
                return;
            }

            var sb = new StringBuilder();

            sb.Append("Comparison Failed");

            if (context.Differences.Count > 0)
            {
                sb.AppendFormat(": The following {0} differences were found.", context.Differences.Count);

                foreach (var difference in context.Differences)
                {
                    var lines = difference.ToString().Split(new[] { "\n" }, StringSplitOptions.None);

                    sb.Append("\n\t");
                    sb.Append(string.Join("\n\t", lines));
                }
            }

            throw new Exception(sb.ToString());
        }
 public override void Compare(IComparison <IEventAssignment> comparison)
 {
     _entityDiffBuilder.Compare(comparison);
     CompareValues(x => x.UseAsValue, x => x.UseAsValue, comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
     // Not Nessessary to compare Changed Object.
 }
Ejemplo n.º 13
0
        /// <summary>
        /// Assert that given the input sample, the boolean expression will be
        /// true for all comparisons with the functionValue.
        /// </summary>
        /// <param name="sample">The input sample used to generate the functionValue</param>
        /// <param name="functionValue">The value generated by the function under test</param>
        /// <param name="comparison">The boolean expression to evaluate the functionValue against</param>
        internal void Assert <TOutput>(TInput sample, TOutput functionValue, IComparison comparison)
        {
            switch (comparison)
            {
            case BlockComparison blockComparison:
                AssertBlock(sample, functionValue, blockComparison);
                break;

            case FunctionComparison <TInput> functionComparison:
                if (!(functionValue is IComparable))
                {
                    throw new PropertyException("Attempted to compare output values that are not of type IComparable");
                }

                AssertFunction(sample, (IComparable)functionValue, functionComparison);
                break;

            case FunctionEqualityComparison <TInput> functionEqualityComparison:
                AssertFunctionEquality(sample, functionValue, functionEqualityComparison);
                break;

            default:
                throw new PropertyException($"Unexpected comparison type {comparison.GetType().Name}");
            }
        }
Ejemplo n.º 14
0
        public override void Compare(IComparison <IModel> comparison)
        {
            //Pass common ancestor here (simulation) so that message and type displayed to user reflects its expectations. (Model is only used internally)
            _objectComparer.Compare(comparison.ChildComparison(x => x.Root, comparison.CommonAncestor));

            //Neighborhood are defined as child container of the Model root container so no need to compare neighborhoods as well
        }
Ejemplo n.º 15
0
 public Property(string description, IEnumerable <Func <TInput, bool> > preconditions, Func <TInput, TOutput> function, IComparison comparison)
 {
     Description   = description;
     Preconditions = preconditions ?? new List <Func <TInput, bool> >();
     Function      = function;
     Comparison    = comparison;
 }
Ejemplo n.º 16
0
 protected override void CompareStartValue(IComparison <IMoleculeStartValue> comparison)
 {
     base.CompareStartValue(comparison);
     CompareValues(x => x.IsPresent, x => x.IsPresent, comparison);
     CompareValues(x => x.ScaleDivisor, x => x.ScaleDivisor, comparison);
     CompareValues(x => x.NegativeValuesAllowed, x => x.NegativeValuesAllowed, comparison);
 }
 public override void Compare(IComparison <CurveChartTemplate> comparison)
 {
     _objectComparer.Compare(comparison.ChildComparison(x => x.ChartSettings));
     _objectComparer.Compare(comparison.ChildComparison(x => x.FontAndSize));
     _enumerableComparer.CompareEnumerables(comparison, x => x.Axes, item => item.Caption);
     _enumerableComparer.CompareEnumerables(comparison, x => x.Curves, item => item.Name);
 }
Ejemplo n.º 18
0
 public override void Compare(IComparison <ITransport> comparison)
 {
     _containerDiffBuilder.Compare(comparison);
     CompareValues(x => _entityPathResolver.PathFor(x.TargetAmount), Captions.Diff.TargetAmount, comparison);
     CompareValues(x => _entityPathResolver.PathFor(x.SourceAmount), Captions.Diff.SourceAmount, comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
 }
 public override void Compare(IComparison <IndividualProtein> comparison)
 {
     _containerDiffBuilder.Compare(comparison);
     CompareValues(x => x.TissueLocation, PKSimConstants.UI.LocalizationInTissue, comparison);
     CompareValues(x => x.IntracellularVascularEndoLocation, PKSimConstants.UI.IntracellularVascularEndoLocation, comparison);
     CompareValues(x => x.MembraneLocation, PKSimConstants.UI.LocationOnVascularEndo, comparison);
 }
Ejemplo n.º 20
0
        private string displayValueFor(ValuePoint valuePoint, IComparison <TableFormula> comparison)
        {
            var formulaOwnerName = _displayNameProvider.DisplayNameFor(comparison.CommonAncestor);
            var tableFormula     = comparison.Object1.DowncastTo <TableFormula>();

            return(Captions.Comparisons.ValuePointAt(tableFormula.Name, formulaOwnerName, tableFormula.XDisplayValueFor(valuePoint.X)));
        }
Ejemplo n.º 21
0
        public static bool IsDeepEqual(this object actual, object expected, IComparison comparison)
        {
            var context = new ComparisonContext();

            var result = comparison.Compare(context, actual, expected);

            return(result == ComparisonResult.Pass);
        }
Ejemplo n.º 22
0
 public override void Compare(IComparison <TSchemaItem> comparison)
 {
     _containerDiffBuilder.Compare(comparison);
     CompareValues(x => x.ApplicationType, PKSimConstants.UI.ApplicationType, comparison);
     CompareStringValues(x => x.FormulationKey, PKSimConstants.UI.PlaceholderFormulation, comparison);
     CompareStringValues(x => x.TargetOrgan, PKSimConstants.UI.TargetOrgan, comparison);
     CompareStringValues(x => x.TargetCompartment, PKSimConstants.UI.TargetCompartment, comparison);
 }
Ejemplo n.º 23
0
        //~V

        public CompareNoAdvance(
            ILog log,
            IComparison comp,
            string name = null) : base(log)
        {
            m_Comparison = comp;
            Name         = name;
        }
 public override void Compare(IComparison <CurveTemplate> comparison)
 {
     CompareValues(x => x.Name, x => x.Name, comparison);
     _objectComparer.Compare(comparison.ChildComparison(x => x.xData));
     _objectComparer.Compare(comparison.ChildComparison(x => x.yData));
     CompareValues(x => x.IsBaseGrid, x => x.IsBaseGrid, comparison);
     _objectComparer.Compare(comparison.ChildComparison(x => x.CurveOptions));
 }
Ejemplo n.º 25
0
 public override void Compare(IComparison <IReaction> comparison)
 {
     _containerDiffBuilder.Compare(comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
     _enumerableComparer.CompareEnumerables(comparison, x => x.Educts, item => item.Partner.Name);
     _enumerableComparer.CompareEnumerables(comparison, x => x.Products, item => item.Partner.Name);
     _enumerableComparer.CompareEnumerables(comparison, x => x.ModifierNames, item => item, missingItemType: ObjectTypes.Modifier);
 }
Ejemplo n.º 26
0
 public override void Compare(IComparison <IObserverBuilder> comparison)
 {
     _entityDiffBuilder.Compare(comparison);
     _moleculeDependentDiffBuilder.Compare(comparison);
     CompareValues(x => x.ContainerCriteria, x => x.ContainerCriteria, comparison);
     CompareValues(x => x.Dimension, x => x.Dimension, comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
 }
Ejemplo n.º 27
0
        public override void Compare(IComparison <Simulation> comparison)
        {
            _lazyLoadTask.Load(comparison.Object1);
            _lazyLoadTask.Load(comparison.Object2);

            _comparer.Compare(comparison.ChildComparison(x => x.Model));
            _comparer.Compare(comparison.ChildComparison(x => x.UsedBuildingBlocks));
        }
Ejemplo n.º 28
0
 public override void Compare(IComparison <IEvent> comparison)
 {
     _entityDiffBuilder.Compare(comparison);
     CompareValues(x => x.OneTime, x => x.OneTime, comparison);
     _objectComparer.Compare(comparison.FormulaComparison());
     _enumerableComparer.CompareEnumerables(comparison, x => x.Assignments, item => _entityPathResolver.ObjectPathFor(item.ChangedEntity));
     _enumerableComparer.CompareEnumerables(comparison, x => x.GetChildren <IEntity>(i => !i.IsAnImplementationOf <IEventAssignment>()), item => item.Name);
 }
        public override void Compare(IComparison <IDistributedParameter> comparison)
        {
            _parameterDiffBuilder.Compare(comparison);

            if (shouldCompareDistributedParameterValue(comparison))
            {
                CompareDoubleValues(x => x.Value, x => x.Value, comparison, x => x.DisplayUnit);
            }
        }
Ejemplo n.º 30
0
 public override void Compare(IComparison <ConstantFormula> comparison)
 {
     if (!comparison.Settings.CompareHiddenEntities)
     {
         return;
     }
     CompareDoubleValues(x => x.Value, x => x.Value, comparison, x => _displayUnitRetriever.PreferredUnitFor(x));
     CompareValues(x => x.Dimension, x => x.Dimension, comparison);
 }
Ejemplo n.º 31
0
        private bool shouldCompareRHSFormula(IComparison <IParameter> comparison)
        {
            if (!comparison.ComparedObjectsDefined)
            {
                return(false);
            }

            return(comparison.Object1.RHSFormula != null && comparison.Object2.RHSFormula != null);
        }
Ejemplo n.º 32
0
 public SetComparison(IComparison inner)
 {
     Inner = inner;
 }
Ejemplo n.º 33
0
 public static void AreEqual(object actual, object expected, IComparison comparison = null)
 {
     actual.IsDeepEqual(expected, comparison).ShouldBe(true);
     actual.ShouldDeepEqual(expected, comparison);
 }
Ejemplo n.º 34
0
		protected virtual void DoComparison(string originalFile, string modifiedFile, ref string redLineChange, ref string redLine, ref IComparison compare)
		{
            ComparisonMode comparisonMode = Interop.Options.OptionApi.GetBool("EnableBinaryComparison") ?  ComparisonMode.Fast : ComparisonMode.Standard;

            compare = _application.Comparisons.NewEx(originalFile, modifiedFile, _application.RenderingSetNames[0], "Original Document", "Modified Document", comparisonMode, false);

			if (SaveChangeSummary)
			{
				if (compare.SaveRedlineML(redLineChange) == false)
				{
					File.Delete(redLineChange);
					redLineChange = string.Empty;
				}
			}
			else
			{
				redLineChange = string.Empty;
			}

			if (compare.SaveRedline(redLine, RedlineFileFormat.Rtf) == false)
			{
				File.Delete(redLine);
				redLine = string.Empty;
			}
		}
Ejemplo n.º 35
0
 public static void AreNotEqual(object actual, object expected, IComparison comparison = null)
 {
     actual.IsDeepEqual(expected, comparison).ShouldBe(false);
     Assert.Throws<DeepEqualException>(() => actual.ShouldDeepEqual(expected, comparison));
 }
Ejemplo n.º 36
0
 public DictionaryComparison(IComparison keyComparer, IComparison valueComparer)
 {
     KeyComparer = keyComparer;
     ValueComparer = valueComparer;
 }
Ejemplo n.º 37
0
 public ListComparison(IComparison inner)
 {
     Inner = inner;
 }
Ejemplo n.º 38
0
 public Compare(IHasher hasherLeft, IHasher hasherRight, IComparison comparison)
 {
     this.hasherLeft = hasherLeft;
     this.hasherRight = hasherRight;
     this.comparison = comparison;
 }
Ejemplo n.º 39
0
 public void Add(IComparison comparison)
 {
     Comparisons.Add(comparison);
 }