diff options
Diffstat (limited to 'tests/src/main/scala')
-rw-r--r-- | tests/src/main/scala/tests.scala | 7 |
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")) |