Skip to content

Commit

Permalink
Merge pull request #669 from ceedubs/xor-po-eq-laws
Browse files Browse the repository at this point in the history
Check laws on Xor PartialOrder and Eq instances
  • Loading branch information
adelbertc committed Nov 19, 2015
2 parents 29ffa90 + df20ce5 commit cc33ad2
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions tests/src/test/scala/cats/tests/XorTests.scala
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,20 @@ class XorTests extends CatsSuite {

checkAll("Xor[Int, String]", OrderLaws[String Xor Int].order)

{
implicit val S = ListWrapper.partialOrder[String]
implicit val I = ListWrapper.partialOrder[Int]
checkAll("ListWrapper[String] Xor ListWrapper[Int]", OrderLaws[ListWrapper[String] Xor ListWrapper[Int]].partialOrder)
checkAll("PartialOrder[ListWrapper[String] Xor ListWrapper[Int]]", SerializableTests.serializable(PartialOrder[ListWrapper[String] Xor ListWrapper[Int]]))
}

{
implicit val S = ListWrapper.eqv[String]
implicit val I = ListWrapper.eqv[Int]
checkAll("ListWrapper[String] Xor ListWrapper[Int]", OrderLaws[ListWrapper[String] Xor ListWrapper[Int]].eqv)
checkAll("Eq[ListWrapper[String] Xor ListWrapper[Int]]", SerializableTests.serializable(Eq[ListWrapper[String] Xor ListWrapper[Int]]))
}

implicit val arbitraryXor: Arbitrary[Xor[Int, String]] = Arbitrary {
for {
left <- arbitrary[Boolean]
Expand Down

0 comments on commit cc33ad2

Please sign in to comment.