示例#1
0
 public new void GetHashCode()
 {
     using (new CultureSwapper(PredefinedCulture.EnglishUnitedStates))
     {
         var comparer = SequenceEqualityComparer.Create(StringComparer.CurrentCultureIgnoreCase);
         Assert.AreEqual(
             comparer.GetHashCode(y),
             comparer.GetHashCode(z));
     }
 }
 public bool Equals(SequenceEqualityComparer <T> other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(this.comparer.Equals(other.comparer));
 }
示例#3
0
        public void Equals()
        {
            using (new CultureSwapper(PredefinedCulture.EnglishUnitedStates))
            {
                var comparer = SequenceEqualityComparer.Create(StringComparer.CurrentCulture);
                EqualityAssert.NotEquals(x, y, comparer);
                EqualityAssert.NotEquals(y, z, comparer);

                comparer = SequenceEqualityComparer.Create(StringComparer.CurrentCultureIgnoreCase);
                EqualityAssert.NotEquals(x, y, comparer);
                EqualityAssert.Equals(y, z, comparer);
            }
        }
        public void Serialize_BinaryFormatter()
        {
            var x = new[] { "abc", "def" };
            var y = new[] { "abc", "DEF" };
            var z = new[] { "xyz" };

            var binaryFormatter = new BinaryFormatter();

            using (var stream = new MemoryStream())
            {
                var original = SequenceEqualityComparer.Create(StringComparer.OrdinalIgnoreCase);
                binaryFormatter.Serialize(stream, original);
                stream.Position = 0;

                var comparer = (SequenceEqualityComparer <string>)binaryFormatter.Deserialize(stream);
                EqualityAssert.Equals(x, y, comparer);
                EqualityAssert.NotEquals(x, z, comparer);
            }
        }