Skip to content

Commit

Permalink
Add Align lawful tests for Option instance (#3350)
Browse files Browse the repository at this point in the history
* added law tests for `Align[Option]`

* backported #3130 Added missing import

* backported #3130 Fixed fmt error

* backported #3130 Fixed fmt error again
  • Loading branch information
gagandeepkalra committed Mar 11, 2020
1 parent e3dc36a commit 4351ea3
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions tests/src/test/scala/cats/tests/OptionSuite.scala
Original file line number Diff line number Diff line change
@@ -1,13 +1,24 @@
package cats.tests

import cats.{Alternative, CoflatMap, CommutativeMonad, Eval, Later, MonadError, Semigroupal, Traverse, TraverseFilter}
import cats.instances.all._
import cats.laws.{ApplicativeLaws, CoflatMapLaws, FlatMapLaws, MonadLaws}
import cats.laws.discipline._
import cats.laws.discipline.arbitrary._
import cats.laws.{ApplicativeLaws, CoflatMapLaws, FlatMapLaws, MonadLaws}
import cats.syntax.apply._
import cats.syntax.option._
import cats.syntax.show._
import cats.{
Align,
Alternative,
CoflatMap,
CommutativeMonad,
Eval,
Later,
MonadError,
Semigroupal,
Traverse,
TraverseFilter
}

class OptionSuite extends CatsSuite {
checkAll("Option[Int]", SemigroupalTests[Option].semigroupal[Int, Int, Int])
Expand All @@ -31,6 +42,9 @@ class OptionSuite extends CatsSuite {
checkAll("Option with Unit", MonadErrorTests[Option, Unit].monadError[Int, Int, Int])
checkAll("MonadError[Option, Unit]", SerializableTests.serializable(MonadError[Option, Unit]))

checkAll("Option[Int]", AlignTests[Option].align[Int, Int, Int, Int])
checkAll("Align[Option]", SerializableTests.serializable(Align[Option]))

test("show") {
none[Int].show should ===("None")
1.some.show should ===("Some(1)")
Expand Down

0 comments on commit 4351ea3

Please sign in to comment.