public static void GetHashCode_Some() { Assert.Equal(1.GetHashCode(), One.GetHashCode()); Assert.Equal(2.GetHashCode(), Two.GetHashCode()); Assert.Equal(2L.GetHashCode(), TwoL.GetHashCode()); #if !(NETSTANDARD2_0 || NETSTANDARD1_x || NETFRAMEWORK) // GetHashCode(StringComparison) Assert.Equal(MyText.GetHashCode(StringComparison.Ordinal), SomeText.GetHashCode()); #endif Assert.Equal(MyUri.GetHashCode(), SomeUri.GetHashCode()); var anyT = AnyT.New(); Assert.Equal(anyT.Value.GetHashCode(), anyT.Some.GetHashCode()); }
public static void GetHashCode_Some_WithDefaultComparer() { // Arrange var icmp = EqualityComparer <int> .Default; var lcmp = EqualityComparer <long> .Default; var scmp = EqualityComparer <string> .Default; var ucmp = EqualityComparer <Uri> .Default; var acmp = EqualityComparer <AnyT> .Default; // Act & Assert Assert.Equal(icmp.GetHashCode(1), ((IStructuralEquatable)One).GetHashCode(icmp)); Assert.Equal(icmp.GetHashCode(2), ((IStructuralEquatable)Two).GetHashCode(icmp)); Assert.Equal(lcmp.GetHashCode(2L), ((IStructuralEquatable)TwoL).GetHashCode(lcmp)); Assert.Equal(scmp.GetHashCode(MyText), ((IStructuralEquatable)SomeText).GetHashCode(scmp)); Assert.Equal(ucmp.GetHashCode(MyUri), ((IStructuralEquatable)SomeUri).GetHashCode(ucmp)); var anyT = AnyT.New(); Assert.Equal(acmp.GetHashCode(anyT.Value), ((IStructuralEquatable)anyT.Some).GetHashCode(acmp)); }
public static async Task OrElseAsync_Some_Sync() { var anyT = AnyT.New(); await Assert.Async.Some(anyT.Value, MaybeEx.OrElseAsync(anyT.Some, ReturnSync_(AnyT.Value))); }
public static (AnyT Value, Maybe <AnyT> Some) New() { var any = new AnyT(); return(any, Maybe.SomeOrNone(any)); }