Beispiel #1
0
        public override void VerifyMethod <T>(
            ReferenceHandling referenceHandling = ReferenceHandling.Structural,
            string excludedMembers = null,
            Type ignoredType       = null,
            Type immutableType     = null)
        {
            var builder = FieldsSettings.Build();

            if (excludedMembers != null)
            {
                builder.AddIgnoredField <T>(excludedMembers);
            }

            if (ignoredType != null)
            {
                builder.AddImmutableType(ignoredType);
            }

            if (immutableType != null)
            {
                builder.AddImmutableType(immutableType);
            }

            var settings = builder.CreateSettings(referenceHandling);

            EqualBy.VerifyCanEqualByFieldValues <T>(settings);
        }
Beispiel #2
0
        public override bool EqualByMethod <T, TValue>(T x, T y, IEqualityComparer <TValue> comparer, ReferenceHandling referenceHandling = ReferenceHandling.Structural)
        {
            var settings = PropertiesSettings.Build()
                           .AddComparer(comparer)
                           .CreateSettings(referenceHandling);

            return(EqualBy.PropertyValues(x, y, settings));
        }
Beispiel #3
0
        public override bool EqualByMethod <T, TValue>(T x, T y, IEqualityComparer <TValue> comparer, ReferenceHandling referenceHandling = ReferenceHandling.Structural)
        {
            var builder = FieldsSettings.Build();

            builder.AddComparer(comparer);
            var settings = builder.CreateSettings(referenceHandling);

            return(EqualBy.FieldValues(x, y, settings));
        }
        public SettingsVm()
        {
            // simulating saving
            this.SaveCommand = new RelayCommand(
                _ => Copy.PropertyValues(this.EditableCopy, this.LastSaved, PropertiesSettings),
                _ => !this.ViewHasErrors && !EqualBy.PropertyValues(this.EditableCopy, this.LastSaved, PropertiesSettings));

            this.UndoAllCommand = new RelayCommand(
                _ => Copy.PropertyValues(this.LastSaved, this.EditableCopy, PropertiesSettings),
                _ => !EqualBy.PropertyValues(this.EditableCopy, this.LastSaved, PropertiesSettings));

            this.ResetCommand = new RelayCommand(_ => this.EditableCopy.Reset());
        }
Beispiel #5
0
        private static bool TryGetValueDiff(object x, object y, MemberSettings settings, out ValueDiff diff)
        {
            if (EqualBy.TryGetValueEquals(x, y, settings, out var result))
            {
                diff = result
                           ? null
                           : new ValueDiff(x, y);

                return(true);
            }

            diff = null;
            return(false);
        }
Beispiel #6
0
        public override bool EqualByMethod <T>(T x, T y, ReferenceHandling referenceHandling = ReferenceHandling.Structural, string excludedMembers = null, Type excludedType = null)
        {
            var builder = FieldsSettings.Build();

            if (excludedMembers != null)
            {
                builder.AddIgnoredField <T>(excludedMembers);
            }

            if (excludedType != null)
            {
                builder.AddImmutableType(excludedType);
            }

            var settings = builder.CreateSettings(referenceHandling);

            return(EqualBy.FieldValues(x, y, settings));
        }
Beispiel #7
0
        public override bool EqualMethod <T>(T x, T y, ReferenceHandling referenceHandling = ReferenceHandling.Structural, string excludedMembers = null, Type ignoredType = null)
        {
            var builder = PropertiesSettings.Build();

            if (excludedMembers != null)
            {
                builder.IgnoreProperty <T>(excludedMembers);
            }

            if (ignoredType != null)
            {
                builder.IgnoreType(ignoredType);
            }

            var settings = builder.CreateSettings(referenceHandling);

            return(EqualBy.PropertyValues(x, y, settings));
        }
Beispiel #8
0
 public override bool EqualByMethod <T>(T x, T y, ReferenceHandling referenceHandling)
 {
     return(EqualBy.FieldValues(x, y, referenceHandling));
 }
 public bool EqualByFieldValues()
 {
     return(EqualBy.FieldValues(this.x, this.y));
 }
 public bool EqualByPropertyValues()
 {
     return(EqualBy.PropertyValues(this.x, this.y));
 }