Example #1
0
        public void Calling_Compare_on_ignored_types_returns_Inconclusive()
        {
            var value1 = default(AlwaysEqual);
            var value2 = default(object);

            "Given a DefaultComparison".x(() =>
                                          SUT = new DefaultComparison()
                                          );

            "And the type is skipped".x(() =>
                                        SUT.Skip <AlwaysEqual>()
                                        );

            "And 2 objects to compare".x(() =>
            {
                value1 = new AlwaysEqual();
                value2 = new AlwaysEqual();
            });

            "When calling Compare".x(() =>
                                     (Result, _) = SUT.Compare(null, value1, value2)
                                     );

            "The result should be Inconclusive".x(() =>
                                                  Result.ShouldBe(ComparisonResult.Inconclusive)
                                                  );
        }
    public static void Main(string[] args)
    {
        object      a = new AlwaysEqual();
        AlwaysEqual b = new AlwaysEqual();

        Console.WriteLine(a == b);
    }
        public static void Contains()
        {
            var strings = new WeakRefCollection <string>();

            strings.Add("a");

            // comparer is used as expected
            Assert.True(strings.Contains("a", StringComparer.Ordinal));
            Assert.False(strings.Contains("A", StringComparer.Ordinal));
            Assert.True(strings.Contains("A", StringComparer.OrdinalIgnoreCase));

            // null check
            Assert.False(strings.Contains(null)); // obvious, since you can't add null

            // default comparer (EqualityComparer<T>.Default)
            var collection = new WeakRefCollection <AlwaysEqual>();
            var item1      = new AlwaysEqual();
            var item2      = new AlwaysEqual();

            collection.Add(item1);
            Assert.True(collection.Contains(item1));
            Assert.True(collection.Contains(item2));
            Assert.True(collection.Contains(item1, ReferenceEqualityComparer <AlwaysEqual> .Default));
            Assert.False(collection.Contains(item2, ReferenceEqualityComparer <AlwaysEqual> .Default));
        }
    static void Main()
    {
        object      o  = new AlwaysEqual();
        AlwaysEqual ae = o as AlwaysEqual;

        if (ae == null)
        {
            Console.WriteLine("ae is null");
        }

        if ((object)ae == null)
        {
            Console.WriteLine("(object)ae is null");
        }
    }
Example #5
0
        public void Calling_Compare_compare_on_ignored_types()
        {
            var value1 = default (AlwaysEqual);
            var value2 = default (object);

            "Given a DefaultComparison"
                .Given(() => SUT = new DefaultComparison());

            "And the type is skipped"
                .And(() => SUT.Skip<AlwaysEqual>());

            "And 2 objects to compare"
                .And(() =>
                    {
                        value1 = new AlwaysEqual();
                        value2 = new AlwaysEqual();
                    });

            "When calling Compare"
                .When(() => Result = SUT.Compare(null, value1, value2));

            "The result should be Pass or Fail"
                .Then(() => Result.ShouldBe(ComparisonResult.Inconclusive));
        }