aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGeorgi Krastev <joro.kr.21@gmail.com>2017-12-04 13:08:27 +0100
committerGeorgi Krastev <joro.kr.21@gmail.com>2017-12-04 13:08:27 +0100
commitbc14fd1119be870e1d1f813aa5292ca30ccc50b4 (patch)
treea9647106ee19e33d2449a013eaf8fd520a809c14 /tests
parentfba0c1cb94d4d67c48db8fb283c5dc1fedbf215a (diff)
downloadmagnolia-bc14fd1119be870e1d1f813aa5292ca30ccc50b4.tar.gz
magnolia-bc14fd1119be870e1d1f813aa5292ca30ccc50b4.tar.bz2
magnolia-bc14fd1119be870e1d1f813aa5292ca30ccc50b4.zip
Add test for low-priority implicits when chained
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"))