Merge pull request #172 from dwijnand/lenient-StringTypeTag

Make checkTypeTag lenient on "scala." type prefix
This commit is contained in:
Dale Wijnand 2018-08-02 08:08:16 +01:00 committed by GitHub
commit 39070c18e2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 2 deletions

View File

@ -11,6 +11,17 @@ class LogExchangeSpec extends FlatSpec with Matchers {
checkTypeTag("stringTypeTagTraceEvent", stringTypeTagTraceEvent, StringTypeTag[TraceEvent])
checkTypeTag("stringTypeTagSuccessEvent", stringTypeTagSuccessEvent, StringTypeTag[SuccessEvent])
private def checkTypeTag[A, B](name: String, actual: A, expected: B): Unit =
s"LogExchange.$name" should s"match real StringTypeTag[$expected]" in assert(actual == expected)
private def checkTypeTag[A](name: String, inc: StringTypeTag[A], exp: StringTypeTag[A]): Unit =
s"LogExchange.$name" should s"match real StringTypeTag[$exp]" in {
val StringTypeTag(incomingString) = inc
val StringTypeTag(expectedString) = exp
if ((incomingString startsWith "scala.") || (expectedString startsWith "scala.")) {
// > historically [Scala] has been inconsistent whether `scala.` is included, or not
// > would it be hard to make the test accept either result?
// https://github.com/scala/community-builds/pull/758#issuecomment-409760633
assert((incomingString stripPrefix "scala.") == (expectedString stripPrefix "scala."))
} else {
assert(incomingString == expectedString)
}
}
}