blob: 433fc5c0c40564589285f0d6616e17da777bf33a (
plain) (
tree)
|
|
import scala.tools.nsc.doc.model._
import scala.tools.partest.ScaladocModelTest
object Test extends ScaladocModelTest {
override def code = """
class CEarly extends { /**CEarly_Doc_foo*/ val foo = 0 } with AnyRef
trait TEarly extends { /**TEarly_Doc_foo*/ val foo = 0 } with AnyRef
class C {
/**C_Doc_sigInferred*/ val sigInferred = 0
/**C_Doc_const*/ final val const = 0
/**C_Doc_varr*/ var varr: Any = null
/**C_Doc_abs*/ val abs: Int
/**C_Doc_absVar*/ var absVar: Any
/**C_Doc_lazyValInferred*/ lazy val lazyValInferred = 0
/**C_Doc_lazyValConst*/ final lazy val lazyValConst = 0
/**C_Doc_lazyValUnit*/ lazy val lazyValUnit: Unit = println()
/**C_Doc_lazyVal*/ lazy val lazyVal: Int = 0
}
trait T {
/**T_Doc_sigInferred*/ val sigInferred = 0
/**T_Doc_const*/ final val const = 0
/**T_Doc_varr*/ var varr: Any = null
/**T_Doc_abs*/ val abs: Int
/**T_Doc_absVar*/ var absVar: Any
/**T_Doc_lazyValInferred*/ lazy val lazyValInferred = 0
/**T_Doc_lazyValConst*/ final lazy val lazyValConst = 0
/**T_Doc_lazyValUnit*/ lazy val lazyValUnit: Unit = println()
/**T_Doc_lazyVal*/ lazy val lazyVal: Int = 0
}"""
// no need for special settings
def scaladocSettings = ""
def assertDoc(classEntity: DocTemplateEntity, valName: String) = {
import access._
val comment = classEntity._value(valName).comment.map(_.body.toString.trim).getOrElse("")
val className = classEntity.name
val marker = s"${className}_Doc_${valName}"
assert(comment.contains(marker), s"Expected $marker in comment for $valName in $className, found: $comment.")
}
def testModel(rootPackage: Package) = {
import access._
assertDoc(rootPackage._class("CEarly"), "foo")
assertDoc(rootPackage._trait("TEarly"), "foo")
val valNames = List("sigInferred", "const", "varr", "abs", "absVar", "lazyValInferred", "lazyValConst", "lazyValUnit", "lazyVal")
val entities = List(rootPackage._class("C"), rootPackage._trait("T"))
for (e <- entities; vn <- valNames) assertDoc(e, vn)
}
}
|