public static bool IsA( object?instance, Type expected, string?message = null) => Asserts.Nonnull(instance, message) && Asserts.Equal(instance !.GetType(), expected, message);
public static bool True(bool value, string?message = null) => value || Asserts.Fail(message ?? "Expected to be true.");
public static bool IsA <TExpected>(object?instance, string?message = null) => Asserts.IsA(instance, typeof(TExpected), message);
public static bool Equal <T>( T expected, T actual, string?message = null) => Asserts.True(expected?.Equals(actual) ?? false, message ?? $"Expected {actual} to equal {expected}.");
public static bool Same( object instanceA, object instanceB, string message = "Expected references to be the same.") => Asserts.True(object.ReferenceEquals(instanceA, instanceB), message);
public static void Null( object?instance, string message = "Expected reference to be null.") => Asserts.True(instance == null, message);
public static bool Nonnull( object?instance, string?message = null) => Asserts.True(instance != null, message ?? "Expected reference to be nonnull.");
public static bool False(bool value, string?message = null) => Asserts.True(!value, message ?? "Expected to be false.");