Propagate reports from script dependency resolver

Compiler: show as compiler messages
IDE: annotate code in a separate highlighting pass
This commit is contained in:
Pavel V. Talanov
2017-06-19 19:58:51 +03:00
parent 96c2a589c0
commit 10e14103b6
16 changed files with 393 additions and 20 deletions
@@ -200,9 +200,10 @@ class TestMessageCollector : MessageCollector {
override fun hasErrors(): Boolean = messages.any { it.severity == CompilerMessageSeverity.EXCEPTION || it.severity == CompilerMessageSeverity.ERROR }
}
fun TestMessageCollector.assertHasMessage(msg: String) {
assert(messages.any { it.message.contains(msg) }) {
"Expecting message \"$msg\", actual:\n${messages.joinToString("\n") { it.message }}"
fun TestMessageCollector.assertHasMessage(msg: String, desiredSeverity: CompilerMessageSeverity? = null) {
assert(messages.any { it.message.contains(msg) && (desiredSeverity == null || it.severity == desiredSeverity) }) {
"Expecting message \"$msg\" with severity ${desiredSeverity?.toString() ?: "Any"}, actual:\n" +
messages.joinToString("\n") { it.severity.toString() + ": " + it.message }
}
}