import org.checkerframework.checker.tainting.qual.Untainted
class CallsCheck {
fun testCall(dirty: String, clean: @Untainted String) {
sink(dirty) //warn
sink("")
sink(cleanMethod())
sink(publicMethod()) //warn
sink(publicFinalMethod())
sink(privateDirty(dirty)) //warn
sink(clean)
}
private fun privateDirty(dirty: String): String {
return dirty
}
open fun publicMethod(): String {
return "1"
}
fun publicFinalMethod(): String {
return "1"
}
private fun cleanMethod(): String {
return "null"
}
fun sink(clean: @Untainted String?) {}
}