summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2014-04-02 18:36:15 +0200
committerJason Zaugg <jzaugg@gmail.com>2014-04-02 18:36:15 +0200
commitceb99257ae98e5bc3603132445582517b3a425b7 (patch)
tree001dbbef364324b6e1ef67efbb9a0806226bbb09 /test
parent1b21784e74e963be553a68a8923db9c501bc5355 (diff)
parent9fbac09b6ec7fcb1b2df75fcbc04bc795eccd669 (diff)
downloadscala-ceb99257ae98e5bc3603132445582517b3a425b7.tar.gz
scala-ceb99257ae98e5bc3603132445582517b3a425b7.tar.bz2
scala-ceb99257ae98e5bc3603132445582517b3a425b7.zip
Merge pull request #3671 from densh/si/8466
SI-8466 fix quasiquote crash on recursively iterable unlifting
Diffstat (limited to 'test')
-rw-r--r--test/files/scalacheck/quasiquotes/LiftableProps.scala7
-rw-r--r--test/files/scalacheck/quasiquotes/UnliftableProps.scala8
2 files changed, 15 insertions, 0 deletions
diff --git a/test/files/scalacheck/quasiquotes/LiftableProps.scala b/test/files/scalacheck/quasiquotes/LiftableProps.scala
index 29fdea5c89..a4c57ac359 100644
--- a/test/files/scalacheck/quasiquotes/LiftableProps.scala
+++ b/test/files/scalacheck/quasiquotes/LiftableProps.scala
@@ -164,4 +164,11 @@ object LiftableProps extends QuasiquoteProperties("liftable") {
val right3: Either[Int, Int] = Right(1)
assert(q"$right3" ≈ q"scala.util.Right(1)")
}
+
+ property("lift xml comment") = test {
+ implicit val liftXmlComment = Liftable[xml.Comment] { comment =>
+ q"new _root_.scala.xml.Comment(${comment.commentText})"
+ }
+ assert(q"${xml.Comment("foo")}" ≈ q"<!--foo-->")
+ }
}
diff --git a/test/files/scalacheck/quasiquotes/UnliftableProps.scala b/test/files/scalacheck/quasiquotes/UnliftableProps.scala
index 1d7629aa29..659b18edab 100644
--- a/test/files/scalacheck/quasiquotes/UnliftableProps.scala
+++ b/test/files/scalacheck/quasiquotes/UnliftableProps.scala
@@ -155,4 +155,12 @@ object UnliftableProps extends QuasiquoteProperties("unliftable") {
assert(t21 == (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21))
assert(t22 == (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22))
}
+
+ property("unlift xml comment") = test {
+ implicit val unliftXmlComment = Unliftable[xml.Comment] {
+ case q"new _root_.scala.xml.Comment(${value: String})" => xml.Comment(value)
+ }
+ val q"${comment: xml.Comment}" = q"<!--foo-->"
+ assert(comment.commentText == "foo")
+ }
}