public void Sorting_value_objects_throws_if_one_of_properties_doesnt_implement_IComparable()
        {
            var vo1 = new VOWithObjectProperty(new object());
            var vo2 = new VOWithObjectProperty(new object());

            Action action = () => new[] { vo1, vo2 }.OrderBy(x => x).ToArray();

            action.Should().Throw <InvalidOperationException>();
        }
        public void Two_value_objects_are_not_equal_if_they_contain_non_comparable_components_of_different_values()
        {
            var vo1 = new VOWithObjectProperty(new object());
            var vo2 = new VOWithObjectProperty(new object());

            int result = vo1.CompareTo(vo2);

            result.Should().NotBe(0);
        }