Exemplo n.º 1
0
 public static void ObjectEquality <T>(FailableFunc <T> failableFunc, [CanBeNull] object obj, bool expectedEquality = true)
 {
     Asserter.Against(failableFunc)
     .WithHeading($"[{failableFunc}] should {(expectedEquality ? "be" : "not be")} equal to [{obj}]")
     .And(it => it.Equals(obj), Is.EqualTo(expectedEquality))
     .And(it => Equals(it, obj), Is.EqualTo(expectedEquality))
     .Invoke();
 }
Exemplo n.º 2
0
 public static void FailedFailable <T>(FailableFunc <T> failableFunc)
 {
     Asserter.Against(failableFunc)
     .And(Has.Property(nameof(failableFunc.HasValue)).False)
     .And(Has.Property(nameof(failableFunc.Failed)).True)
     .And(it => it.Value, Throws.InvalidOperationException)
     .Invoke();
 }
Exemplo n.º 3
0
 public static void PassedFailable <T>(FailableFunc <T> failableFunc)
 {
     AssertAll.Of(
         () => Assert.That(failableFunc, Has.Property(nameof(failableFunc.HasValue)).True),
         () => Assert.That(failableFunc, Has.Property(nameof(failableFunc.Failed)).False),
         () => Assert.DoesNotThrow(() => Console.WriteLine(failableFunc.Value)),
         () => Assert.Throws <InvalidOperationException>(() => Console.WriteLine(failableFunc.Excuse))
         );
 }
Exemplo n.º 4
0
 public static void Equality <T>(FailableFunc <T> failableFunc, T expectedValue, bool expectedEquality)
 {
     AssertAll.Of(
         () => Assert.That(failableFunc == expectedValue, Is.EqualTo(expectedEquality), "failable == expectedValue"),
         () => Assert.That(expectedValue == failableFunc, Is.EqualTo(expectedEquality), "expectedValue == failable"),
         () => Assert.That(failableFunc.Equals(expectedValue), Is.EqualTo(expectedEquality), "failable.Equals(expectedValue)"),
         () => Assert.That(Optional.AreEqual(failableFunc, expectedValue), Is.EqualTo(expectedEquality), "Optional.AreEqual(failable, expectedValue)"),
         () => Assert.That(Optional.AreEqual(expectedValue, failableFunc), Is.EqualTo(expectedEquality), "Optional.AreEqual(expectedValue, failable)")
         );
 }
Exemplo n.º 5
0
 public static void Equality <T>(FailableFunc <T> a, FailableFunc <T> b, bool expectedEquality)
 {
     AssertAll.Of(
         () => Assert.That(a == b, Is.EqualTo(expectedEquality), "a == b"),
         () => Assert.That(b == a, Is.EqualTo(expectedEquality), "b == a"),
         () => Assert.That(a.Equals(b), Is.EqualTo(expectedEquality), "a.Equals(b)"),
         () => Assert.That(b.Equals(a), Is.EqualTo(expectedEquality), "b.Equals(a)"),
         () => Assert.That(Optional.AreEqual(a, b), Is.EqualTo(expectedEquality), "Optional.AreEqual(a,b)"),
         () => Assert.That(Optional.AreEqual(b, a), Is.EqualTo(expectedEquality), "Optional.AreEqual(b,a)")
         );
 }
Exemplo n.º 6
0
 public static void Equality <T>(FailableFunc <T> failableFunc, Optional <T> optional, bool expectedEquality)
 {
     AssertAll.Of(
         () => Assert.That(failableFunc == optional, Is.EqualTo(expectedEquality), "failable == optional"),
         // no longer supported through ==
         // () => Assert.That(optional     == failableFunc,                  Is.EqualTo(expectedEquality), "optional == failable"),
         () => Assert.That(failableFunc.Equals(optional), Is.EqualTo(expectedEquality), "failable.Equals(optional)"),
         () => Assert.That(optional.Equals(failableFunc), Is.EqualTo(expectedEquality), "optional.Equals(failable)"),
         () => Assert.That(Optional.AreEqual(optional, failableFunc), Is.EqualTo(expectedEquality), "Optional.AreEqual(optional, failable)"),
         () => Assert.That(Optional.AreEqual(failableFunc, optional), Is.EqualTo(expectedEquality), "Optional.AreEqual(failable, optional)")
         );
 }
Exemplo n.º 7
0
        public void FailableNoArgConstructor()
        {
            var failableFunc = new FailableFunc <int>();

            Validate.FailedFailable(failableFunc);
        }
Exemplo n.º 8
0
        public void FailableDefault()
        {
            FailableFunc <int> failableFunc = default;

            Validate.FailedFailable(failableFunc);
        }