public void LazyEqualToShouldThrowIfValueProviderIsNull()
        {
            Action action = () => Pattern.EqualTo((Func <int>)null);

            action.Should().Throw <ArgumentNullException>();
        }
 public Property LazyEqualToShouldSucceedOnlyOnEqualObjects(string x, string y)
 => (Equals(x, y) == Pattern.EqualTo(() => y).Match(x).IsSome).ToProperty();