From 3d8901824078f3d38d497b60e3fdfa82709a1680 Mon Sep 17 00:00:00 2001 From: Travis Brown Date: Wed, 25 Mar 2020 11:09:36 -0500 Subject: [PATCH] Don't use cats.instances in tests --- free/src/test/scala/cats/free/FreeSuite.scala | 2 -- free/src/test/scala/cats/free/FreeTSuite.scala | 1 - js/src/test/scala/cats/tests/FutureTests.scala | 4 ++-- jvm/src/test/scala/cats/tests/FutureSuite.scala | 2 +- testkit/src/main/scala/cats/tests/ListWrapper.scala | 1 - .../scala-2.12/cats/tests/NonEmptyStreamSuite.scala | 2 +- .../scala-2.13+/cats/tests/ScalaVersionSpecific.scala | 1 - .../cats/tests/BinCodecInvariantMonoidalSuite.scala | 2 +- tests/src/test/scala/cats/tests/EitherSuite.scala | 4 ++-- tests/src/test/scala/cats/tests/FoldableSuite.scala | 2 +- tests/src/test/scala/cats/tests/FunctionSuite.scala | 2 +- .../cats/tests/IndexedReaderWriterStateTSuite.scala | 10 ++-------- .../src/test/scala/cats/tests/IndexedStateTSuite.scala | 1 - tests/src/test/scala/cats/tests/IorTSuite.scala | 2 -- .../test/scala/cats/tests/NonEmptyVectorSuite.scala | 2 +- tests/src/test/scala/cats/tests/OrderSuite.scala | 2 -- tests/src/test/scala/cats/tests/ParallelSuite.scala | 7 ------- .../src/test/scala/cats/tests/PartialOrderSuite.scala | 4 ++-- tests/src/test/scala/cats/tests/SemigroupSuite.scala | 2 -- tests/src/test/scala/cats/tests/ShowSuite.scala | 5 ----- tests/src/test/scala/cats/tests/SyntaxSuite.scala | 1 - tests/src/test/scala/cats/tests/TraverseSuite.scala | 1 - .../test/scala/cats/tests/UnorderedFoldableSuite.scala | 5 ++--- 23 files changed, 16 insertions(+), 49 deletions(-) diff --git a/free/src/test/scala/cats/free/FreeSuite.scala b/free/src/test/scala/cats/free/FreeSuite.scala index 232b596e48..ea95dccb6b 100644 --- a/free/src/test/scala/cats/free/FreeSuite.scala +++ b/free/src/test/scala/cats/free/FreeSuite.scala @@ -228,8 +228,6 @@ class FreeSuite extends CatsSuite { } object FreeSuite extends FreeSuiteInstances { - import cats.instances.function._ - implicit def trampolineArbitrary[A: Arbitrary]: Arbitrary[Trampoline[A]] = freeArbitrary[Function0, A] diff --git a/free/src/test/scala/cats/free/FreeTSuite.scala b/free/src/test/scala/cats/free/FreeTSuite.scala index f5a2591a7a..39a523d0f1 100644 --- a/free/src/test/scala/cats/free/FreeTSuite.scala +++ b/free/src/test/scala/cats/free/FreeTSuite.scala @@ -249,7 +249,6 @@ trait FreeTSuiteInstances { import FreeT._ import IndexedStateT._ - import cats.kernel.instances.option._ import cats.tests.IndexedStateTSuite._ import SemigroupalTests._ diff --git a/js/src/test/scala/cats/tests/FutureTests.scala b/js/src/test/scala/cats/tests/FutureTests.scala index 35477b01d6..901a165d98 100644 --- a/js/src/test/scala/cats/tests/FutureTests.scala +++ b/js/src/test/scala/cats/tests/FutureTests.scala @@ -1,7 +1,7 @@ package cats.js.tests import cats.Comonad -import cats.instances.all._ +import cats.instances.FutureInstances import cats.js.instances.Await import cats.js.instances.future.futureComonad import cats.kernel.Eq @@ -15,7 +15,7 @@ import org.scalacheck.Arbitrary.arbitrary import scala.concurrent.{ExecutionContextExecutor, Future} import scala.concurrent.duration._ -class FutureTests extends CatsSuite { +class FutureTests extends CatsSuite with FutureInstances { // Replaces Scala.js's `JSExecutionContext.runNow`, which is removed in 1.0. // TODO: We shouldn't do this! See: https://github.com/scala-js/scala-js/issues/2102 implicit private object RunNowExecutionContext extends ExecutionContextExecutor { diff --git a/jvm/src/test/scala/cats/tests/FutureSuite.scala b/jvm/src/test/scala/cats/tests/FutureSuite.scala index 48a1580df0..f0f2a11e06 100644 --- a/jvm/src/test/scala/cats/tests/FutureSuite.scala +++ b/jvm/src/test/scala/cats/tests/FutureSuite.scala @@ -1,6 +1,6 @@ package cats.jvm.tests -import cats.instances.all._ +import cats.instances.future._ import cats.kernel.{Eq, Semigroup} import cats.kernel.laws.discipline.{MonoidTests => MonoidLawTests, SemigroupTests => SemigroupLawTests} import cats.laws.discipline._ diff --git a/testkit/src/main/scala/cats/tests/ListWrapper.scala b/testkit/src/main/scala/cats/tests/ListWrapper.scala index 0f21aefb51..c744fb7b48 100644 --- a/testkit/src/main/scala/cats/tests/ListWrapper.scala +++ b/testkit/src/main/scala/cats/tests/ListWrapper.scala @@ -1,7 +1,6 @@ package cats package tests -import cats.instances.list._ import org.scalacheck.{Arbitrary, Cogen} import org.scalacheck.Arbitrary.arbitrary diff --git a/tests/src/test/scala-2.12/cats/tests/NonEmptyStreamSuite.scala b/tests/src/test/scala-2.12/cats/tests/NonEmptyStreamSuite.scala index 76c3d52481..bb6d43b136 100644 --- a/tests/src/test/scala-2.12/cats/tests/NonEmptyStreamSuite.scala +++ b/tests/src/test/scala-2.12/cats/tests/NonEmptyStreamSuite.scala @@ -2,8 +2,8 @@ package cats.tests import cats.{Comonad, Eval, Functor, Monad, NonEmptyTraverse, Now, Reducible, SemigroupK, Show} import cats.data.{NonEmptyStream, OneAnd} -import cats.instances.all._ import cats.kernel.Semigroup +import cats.kernel.instances.order.catsKernelOrderingForOrder import cats.kernel.laws.discipline.{EqTests, SemigroupTests} import cats.laws.discipline._ import cats.laws.discipline.SemigroupalTests.Isomorphisms diff --git a/tests/src/test/scala-2.13+/cats/tests/ScalaVersionSpecific.scala b/tests/src/test/scala-2.13+/cats/tests/ScalaVersionSpecific.scala index ff44c4ca5b..c211a96df3 100644 --- a/tests/src/test/scala-2.13+/cats/tests/ScalaVersionSpecific.scala +++ b/tests/src/test/scala-2.13+/cats/tests/ScalaVersionSpecific.scala @@ -2,7 +2,6 @@ package cats.tests import cats.{Eval, Foldable, Id, Now} import cats.data.NonEmptyLazyList -import cats.instances.all._ import cats.laws.discipline.{NonEmptyParallelTests, ParallelTests} import cats.laws.discipline.arbitrary._ import cats.syntax.either._ diff --git a/tests/src/test/scala/cats/tests/BinCodecInvariantMonoidalSuite.scala b/tests/src/test/scala/cats/tests/BinCodecInvariantMonoidalSuite.scala index 8a51c12929..c43355ea48 100644 --- a/tests/src/test/scala/cats/tests/BinCodecInvariantMonoidalSuite.scala +++ b/tests/src/test/scala/cats/tests/BinCodecInvariantMonoidalSuite.scala @@ -1,13 +1,13 @@ package cats.tests import cats.{InvariantMonoidal, InvariantSemigroupal} -import cats.implicits._ import cats.kernel.{Eq, Monoid, Semigroup} import cats.kernel.compat.scalaVersionSpecific._ import cats.kernel.laws.discipline.{MonoidTests, SemigroupTests} import cats.laws.discipline.eq._ import cats.laws.discipline.arbitrary._ import cats.laws.discipline.{ExhaustiveCheck, InvariantMonoidalTests, MiniInt, SerializableTests} +import cats.syntax.all._ import org.scalacheck.{Arbitrary, Gen} @suppressUnusedImportWarningForScalaVersionSpecific diff --git a/tests/src/test/scala/cats/tests/EitherSuite.scala b/tests/src/test/scala/cats/tests/EitherSuite.scala index 0622420829..c85ac6f514 100644 --- a/tests/src/test/scala/cats/tests/EitherSuite.scala +++ b/tests/src/test/scala/cats/tests/EitherSuite.scala @@ -42,7 +42,7 @@ class EitherSuite extends CatsSuite { checkAll("Semigroup[Either[ListWrapper[String], Int]]", SerializableTests.serializable(Semigroup[Either[ListWrapper[String], Int]])) - val partialOrder = catsStdPartialOrderForEither[Int, String] + val partialOrder = cats.kernel.instances.either.catsStdPartialOrderForEither[Int, String] val order = implicitly[Order[Either[Int, String]]] val monad = implicitly[Monad[Either[Int, *]]] val show = implicitly[Show[Either[Int, String]]] @@ -80,7 +80,7 @@ class EitherSuite extends CatsSuite { } test("implicit instances resolve specifically") { - val eq = catsStdEqForEither[Int, String] + val eq = cats.kernel.instances.either.catsStdEqForEither[Int, String] assert(!eq.isInstanceOf[PartialOrder[_]]) assert(!eq.isInstanceOf[Order[_]]) assert(!partialOrder.isInstanceOf[Order[_]]) diff --git a/tests/src/test/scala/cats/tests/FoldableSuite.scala b/tests/src/test/scala/cats/tests/FoldableSuite.scala index 5f01be02fc..adb242a17d 100644 --- a/tests/src/test/scala/cats/tests/FoldableSuite.scala +++ b/tests/src/test/scala/cats/tests/FoldableSuite.scala @@ -2,7 +2,7 @@ package cats.tests import cats.{Eval, Foldable, Id, Now} import cats.data.{Const, EitherK, IdT, Ior, Nested, NonEmptyList, NonEmptyStream, NonEmptyVector, OneAnd, Validated} -import cats.instances.all._ +import cats.instances.order._ import cats.kernel.{Eq, Monoid} import cats.kernel.compat.scalaVersionSpecific._ import cats.laws.discipline.arbitrary._ diff --git a/tests/src/test/scala/cats/tests/FunctionSuite.scala b/tests/src/test/scala/cats/tests/FunctionSuite.scala index 7fefc1fb75..f8b6c43e6e 100644 --- a/tests/src/test/scala/cats/tests/FunctionSuite.scala +++ b/tests/src/test/scala/cats/tests/FunctionSuite.scala @@ -93,7 +93,7 @@ class FunctionSuite extends CatsSuite { checkAll("Contravariant[* => Int]", SerializableTests.serializable(Contravariant[* => Int])) checkAll("Function1", MonoidKTests[λ[α => α => α]].monoidK[MiniInt]) - checkAll("MonoidK[λ[α => α => α]", SerializableTests.serializable(catsStdMonoidKForFunction1)) + checkAll("MonoidK[λ[α => α => α]", SerializableTests.serializable(MonoidK[Endo])) checkAll("Function1[MiniInt, *]", DistributiveTests[MiniInt => *].distributive[Int, Int, Int, Id, Function1[MiniInt, *]]) diff --git a/tests/src/test/scala/cats/tests/IndexedReaderWriterStateTSuite.scala b/tests/src/test/scala/cats/tests/IndexedReaderWriterStateTSuite.scala index 5222e6e382..7a0947036f 100644 --- a/tests/src/test/scala/cats/tests/IndexedReaderWriterStateTSuite.scala +++ b/tests/src/test/scala/cats/tests/IndexedReaderWriterStateTSuite.scala @@ -481,21 +481,15 @@ class ReaderWriterStateTSuite extends CatsSuite { } object ReaderWriterStateTSuite { - def addAndLog(i: Int): ReaderWriterState[String, Vector[String], Int, Int] = { - import cats.instances.vector._ - + def addAndLog(i: Int): ReaderWriterState[String, Vector[String], Int, Int] = ReaderWriterState { (context, state) => (Vector(s"${context}: Added ${i}"), state + i, state + i) } - } - - def addLogUnit(i: Int): ReaderWriterState[String, Unit, Int, Int] = { - import cats.kernel.instances.unit._ + def addLogUnit(i: Int): ReaderWriterState[String, Unit, Int, Int] = ReaderWriterState { (context, state) => ((), state + i, state + i) } - } implicit def IRWSTEq[F[_], E, L, SA, SB, A](implicit SA: ExhaustiveCheck[SA], SB: Arbitrary[SB], diff --git a/tests/src/test/scala/cats/tests/IndexedStateTSuite.scala b/tests/src/test/scala/cats/tests/IndexedStateTSuite.scala index c5e6919769..02138dd708 100644 --- a/tests/src/test/scala/cats/tests/IndexedStateTSuite.scala +++ b/tests/src/test/scala/cats/tests/IndexedStateTSuite.scala @@ -3,7 +3,6 @@ package cats.tests import cats._ import cats.arrow.{Profunctor, Strong} import cats.data.{EitherT, IndexedStateT, State, StateT} -import cats.instances.all._ import cats.kernel.Eq import cats.laws.discipline._ import cats.laws.discipline.SemigroupalTests.Isomorphisms diff --git a/tests/src/test/scala/cats/tests/IorTSuite.scala b/tests/src/test/scala/cats/tests/IorTSuite.scala index f331b5798a..9a086ca3b2 100644 --- a/tests/src/test/scala/cats/tests/IorTSuite.scala +++ b/tests/src/test/scala/cats/tests/IorTSuite.scala @@ -41,8 +41,6 @@ class IorTSuite extends CatsSuite { } { - implicit val F: MonadError[Option, Unit] = catsStdInstancesForOption - checkAll("IorT[Option, String, String]", MonadErrorTests[IorT[Option, String, *], Unit].monadError[String, String, String]) checkAll("MonadError[IorT[Option, *, *]]", diff --git a/tests/src/test/scala/cats/tests/NonEmptyVectorSuite.scala b/tests/src/test/scala/cats/tests/NonEmptyVectorSuite.scala index 8a099939ef..40d70b441d 100644 --- a/tests/src/test/scala/cats/tests/NonEmptyVectorSuite.scala +++ b/tests/src/test/scala/cats/tests/NonEmptyVectorSuite.scala @@ -18,8 +18,8 @@ import cats.{ } import cats.data.NonEmptyVector import cats.data.NonEmptyVector.ZipNonEmptyVector -import cats.instances.all._ import cats.kernel.Semigroup +import cats.kernel.instances.order.catsKernelOrderingForOrder import cats.kernel.laws.discipline.{EqTests, SemigroupTests} import cats.laws.discipline.{ AlignTests, diff --git a/tests/src/test/scala/cats/tests/OrderSuite.scala b/tests/src/test/scala/cats/tests/OrderSuite.scala index 4c8789e149..9f0da2eec5 100644 --- a/tests/src/test/scala/cats/tests/OrderSuite.scala +++ b/tests/src/test/scala/cats/tests/OrderSuite.scala @@ -47,7 +47,6 @@ class OrderSuite extends CatsSuite { object OrderSuite { def summonInstance(): Unit = { - import cats.instances.order._ Invariant[Order] Contravariant[Order] ContravariantMonoidal[Order] @@ -58,7 +57,6 @@ object OrderSuite { // the Ordering instance from the Order instance should be trumped // by the one provided in the Ordering companion object { - import cats.instances.all._ Ordering[String] class C implicit val ording: Ordering[C] = new Ordering[C] { diff --git a/tests/src/test/scala/cats/tests/ParallelSuite.scala b/tests/src/test/scala/cats/tests/ParallelSuite.scala index e5cc2e9d0b..d34b0c4321 100644 --- a/tests/src/test/scala/cats/tests/ParallelSuite.scala +++ b/tests/src/test/scala/cats/tests/ParallelSuite.scala @@ -508,13 +508,6 @@ class ParallelSuite extends CatsSuite with ApplicativeErrorForEitherTest with Sc } trait ApplicativeErrorForEitherTest extends AnyFunSuiteLike with FunSuiteDiscipline with Checkers { - - import cats.instances.either._ - import cats.instances.string._ - import cats.instances.int._ - import cats.instances.unit._ - import cats.instances.tuple._ - implicit def eqV[A: Eq, B: Eq]: Eq[Validated[A, B]] = cats.data.Validated.catsDataEqForValidated { diff --git a/tests/src/test/scala/cats/tests/PartialOrderSuite.scala b/tests/src/test/scala/cats/tests/PartialOrderSuite.scala index fd355e2719..43c6bf5c3e 100644 --- a/tests/src/test/scala/cats/tests/PartialOrderSuite.scala +++ b/tests/src/test/scala/cats/tests/PartialOrderSuite.scala @@ -2,7 +2,7 @@ package cats.tests import cats.{Contravariant, ContravariantMonoidal, Invariant} import cats.instances.all._ -import cats.kernel.PartialOrder +import cats.kernel.{Order, PartialOrder} import cats.kernel.laws.discipline.SerializableTests import cats.laws.discipline.{ContravariantMonoidalTests, MiniInt} import cats.laws.discipline.arbitrary._ @@ -30,6 +30,7 @@ class PartialOrderSuite extends CatsSuite { test("companion object syntax") { forAll { (i: Int, j: Int) => + val catsKernelStdOrderForInt: Order[Int] = Order[Int] checkPartialCompare(PartialOrder.partialCompare(i, j), catsKernelStdOrderForInt.partialCompare(i, j)) PartialOrder.tryCompare(i, j) should ===(catsKernelStdOrderForInt.tryCompare(i, j)) PartialOrder.pmin(i, j) should ===(catsKernelStdOrderForInt.pmin(i, j)) @@ -58,7 +59,6 @@ class PartialOrderSuite extends CatsSuite { object PartialOrderSuite { def summonInstance(): Unit = { - import cats.instances.partialOrder._ Invariant[PartialOrder] Contravariant[PartialOrder] () diff --git a/tests/src/test/scala/cats/tests/SemigroupSuite.scala b/tests/src/test/scala/cats/tests/SemigroupSuite.scala index 76c5117333..fcab9ee53d 100644 --- a/tests/src/test/scala/cats/tests/SemigroupSuite.scala +++ b/tests/src/test/scala/cats/tests/SemigroupSuite.scala @@ -9,14 +9,12 @@ import org.scalatestplus.scalacheck.ScalaCheckDrivenPropertyChecks class SemigroupSuite extends AnyFunSuiteLike with Matchers with ScalaCheckDrivenPropertyChecks { { - import cats.implicits._ Invariant[Semigroup] Semigroupal[Semigroup] InvariantMonoidal[Semigroup] } { - import cats.instances.invariant._ Invariant[Semigroup] Semigroupal[Semigroup] InvariantMonoidal[Semigroup] diff --git a/tests/src/test/scala/cats/tests/ShowSuite.scala b/tests/src/test/scala/cats/tests/ShowSuite.scala index 2ae716c684..00d8392dac 100644 --- a/tests/src/test/scala/cats/tests/ShowSuite.scala +++ b/tests/src/test/scala/cats/tests/ShowSuite.scala @@ -58,9 +58,6 @@ final class ShowSuite2 extends AnyFunSuiteLike { "contravariant show for FiniteDuration can be inferred when importing both duration's and finiteDuration's instances" ) { - import cats.instances.duration._ - import cats.instances.finiteDuration._ - implicitly[Order[Duration]] implicitly[Order[FiniteDuration]] @@ -69,8 +66,6 @@ final class ShowSuite2 extends AnyFunSuiteLike { test("all the Duration's and FiniteDuration's instances can be correctly inferred when importing implicits") { - import cats.implicits._ - implicitly[Order[Duration]] implicitly[Order[FiniteDuration]] diff --git a/tests/src/test/scala/cats/tests/SyntaxSuite.scala b/tests/src/test/scala/cats/tests/SyntaxSuite.scala index 9a4653958c..94ee69b1ef 100644 --- a/tests/src/test/scala/cats/tests/SyntaxSuite.scala +++ b/tests/src/test/scala/cats/tests/SyntaxSuite.scala @@ -3,7 +3,6 @@ package cats.tests import cats._ import cats.arrow.Compose import cats.data.{Binested, Nested, NonEmptyChain, NonEmptyList, NonEmptySet} -import cats.instances.all._ import cats.syntax.all._ import scala.collection.immutable.{SortedMap, SortedSet} diff --git a/tests/src/test/scala/cats/tests/TraverseSuite.scala b/tests/src/test/scala/cats/tests/TraverseSuite.scala index 7014c6beb3..f3df02f006 100644 --- a/tests/src/test/scala/cats/tests/TraverseSuite.scala +++ b/tests/src/test/scala/cats/tests/TraverseSuite.scala @@ -1,7 +1,6 @@ package cats.tests import cats.{Applicative, Eval, Traverse} -import cats.instances.all._ import cats.kernel.compat.scalaVersionSpecific._ import cats.syntax.foldable._ import cats.syntax.functor._ diff --git a/tests/src/test/scala/cats/tests/UnorderedFoldableSuite.scala b/tests/src/test/scala/cats/tests/UnorderedFoldableSuite.scala index e50785e12f..500824328e 100644 --- a/tests/src/test/scala/cats/tests/UnorderedFoldableSuite.scala +++ b/tests/src/test/scala/cats/tests/UnorderedFoldableSuite.scala @@ -1,7 +1,6 @@ package cats.tests import cats.UnorderedFoldable -import cats.instances.all._ import cats.kernel.CommutativeMonoid import cats.laws.discipline.UnorderedFoldableTests import cats.syntax.unorderedFoldable._ @@ -51,13 +50,13 @@ sealed abstract class UnorderedFoldableSuite[F[_]](name: String)(implicit ArbFSt final class UnorderedFoldableSetSuite extends UnorderedFoldableSuite[Set]("set") { def iterator[T](set: Set[T]): Iterator[T] = set.iterator def specializedUnorderedFoldMap[A, B: CommutativeMonoid](fa: Set[A])(f: A => B): B = - catsStdInstancesForSet.unorderedFoldMap(fa)(f) + UnorderedFoldable[Set].unorderedFoldMap(fa)(f) } final class UnorderedFoldableMapSuite extends UnorderedFoldableSuite[Map[String, *]]("map") { def iterator[T](map: Map[String, T]): Iterator[T] = map.valuesIterator def specializedUnorderedFoldMap[A, B: CommutativeMonoid](fa: Map[String, A])(f: A => B): B = - catsStdInstancesForMap[String].unorderedFoldMap(fa)(f) + UnorderedFoldable[Map[String, *]].unorderedFoldMap(fa)(f) } sealed abstract class SpecializedUnorderedFoldableSuite[F[_]: UnorderedFoldable](name: String)(