public void Should_return_0_for_both_member_is_null()
        {
            var instance0 = new CompositeObject {
                Value = null
            };
            var instance1 = new CompositeObject {
                Value = null
            };

            instance0.CompareTo(instance1).Should().Be(0);
        }
        public void Should_return_minus1_for_self_member_is_null()
        {
            var instance0 = new CompositeObject {
                Value = null
            };
            var instance1 = new CompositeObject {
                Value = new CompositeChildValue {
                    Value1 = 2
                }
            };

            instance0.CompareTo(instance1).Should().Be(-1);
        }
        public void Should_return_1_for_other_member_is_null()
        {
            var instance0 = new CompositeObject {
                Value = new CompositeChildValue {
                    Value1 = 1
                }
            };
            var instance1 = new CompositeObject {
                Value = null
            };

            instance0.CompareTo(instance1).Should().Be(1);
        }
        public void Should_return_CompareTo_result_for_type_with_subclass_of_generated_code_as_member()
        {
            var instance0 = new CompositeObject {
                Value = new CompositeChildValue {
                    Value1 = 1
                }
            };
            var instance1 = new CompositeObject {
                Value = new CompositeChildValue {
                    Value1 = 2
                }
            };

            instance0.CompareTo(instance1)
            .Should().Be(instance0.Value.Value1.CompareTo(instance1.Value.Value1));
        }