From f0341f54a55509a4ca60b1fbf91c4514fa6073a0 Mon Sep 17 00:00:00 2001 From: Jacob Barber Date: Mon, 18 Dec 2017 14:46:05 -0600 Subject: [PATCH] Make messages used in Rule generator be generated --- .../src/test/scala/checklist/laws/package.scala | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/checklist/src/test/scala/checklist/laws/package.scala b/checklist/src/test/scala/checklist/laws/package.scala index 8c4a53f..7313fb6 100644 --- a/checklist/src/test/scala/checklist/laws/package.scala +++ b/checklist/src/test/scala/checklist/laws/package.scala @@ -13,11 +13,14 @@ trait ScalacheckInstances { implicit def arbRule[A: Arbitrary, B: Arbitrary](implicit arbF: Arbitrary[A => Ior[A, B]]): Arbitrary[Rule[A, B]] = Arbitrary( for { f <- arbF.arbitrary - } yield Rule.pure(f.map { - case Ior.Both(_, b) => Ior.both(NonEmptyList.of(ErrorMessage("both")), b) - case Ior.Left(_) => Ior.left(NonEmptyList.of(ErrorMessage("left"))) - case Ior.Right(a) => Ior.right(a) - }) + messages <- Arbitrary.arbitrary[Messages] + } yield { + Rule.pure(f(_).fold( + _ => Ior.left(messages), + Ior.right(_), + (_, b) => Ior.both(messages, b) + )) + } ) implicit val arbPath: Arbitrary[Path] = Arbitrary(