aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/src/main/scala/tests.scala7
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/src/main/scala/tests.scala b/tests/src/main/scala/tests.scala
index a6e32d4..e275dee 100644
--- a/tests/src/main/scala/tests.scala
+++ b/tests/src/main/scala/tests.scala
@@ -20,6 +20,7 @@ case class Address(line1: String, occupant: Person)
class Length(val value: Int) extends AnyVal
+case class FruitBasket(fruits: Fruit*)
case class Lunchbox(fruit: Fruit, drink: String)
object Fruit {
import examples._
@@ -105,6 +106,12 @@ object Tests extends TestApp {
implicitly[Show[String, Fruit]].show(Fruit("apple"))
}.assert(_ == "Fruit(name=apple)")
+ test("low-priority implicit does not beat Magnolia when chained") {
+ import magnolia.examples._
+ import Show.gen
+ implicitly[Show[String, FruitBasket]].show(FruitBasket(Fruit("apple"), Fruit("banana")))
+ }.assert(_ == "FruitBasket(fruits=[Fruit(name=apple),Fruit(name=banana)])")
+
test("typeclass implicit scope has lower priority than ADT implicit scope") {
import magnolia.examples._
implicitly[Show[String, Fruit]].show(Fruit("apple"))