Testing Results
Result value testing
filtering with filter
Result.valid(42).filter(_ == 42, 1337) ==== Valid(42)
Result.valid(42).filter(_ != 42, 1337) ==== Invalid(1337)
Result.invalid(1337).filter(_ == 42, 42) ==== Invalid(1337)
checking for validity
Result.valid(42).isValid ==== true
Result.invalid(1337).isValid ==== false
Result.valid(42).isInvalid ==== false
Result.invalid(1337).isInvalid ==== true
exists tests if a Result is valid and a predicate holds
Result.valid(42).exists(_ == 42) ==== true
Result.valid(42).exists(_ == 1337) ==== false
Result.invalid(42).exists(_ == 42) ==== false
Result.invalid(42).exists(_ == 1337) ==== false
forall tests if a Result is either invalid or satisfies a predicate
Result.valid(42).forall(_ == 42) ==== true
Result.valid(42).forall(_ == 1337) ==== false
Result.invalid(42).forall(_ == 42) ==== true
Result.invalid(42).forall(_ == 1337) ==== true
contains tests if a Result has a specific valid value
Result.valid(42).contains(42) ==== true
Result.valid(42).contains(1337) ==== false
Result.invalid(42).contains(42) ==== false
Result.invalid(42).contains(1337) ==== false