More robust against the lack of companion?

This commit is contained in:
Eugene Yokota 2024-04-05 01:29:30 -04:00 committed by Adrien Piquerez
parent 33d50e2f47
commit 967d4a08b3
1 changed files with 14 additions and 9 deletions

View File

@ -30,6 +30,7 @@ import testing.{
}
import scala.annotation.tailrec
import scala.util.control.NonFatal
import sbt.internal.util.ManagedLogger
import sbt.util.Logger
import sbt.protocol.testing.TestResult
@ -534,15 +535,19 @@ object Tests {
case analysis: Analysis =>
val acs: Seq[xsbti.api.AnalyzedClass] = analysis.apis.internal.values.toVector
acs.flatMap { ac =>
val companions = ac.api
val all =
Seq(companions.classApi: Definition, companions.objectApi: Definition) ++
(companions.classApi.structure.declared.toSeq: Seq[Definition]) ++
(companions.classApi.structure.inherited.toSeq: Seq[Definition]) ++
(companions.objectApi.structure.declared.toSeq: Seq[Definition]) ++
(companions.objectApi.structure.inherited.toSeq: Seq[Definition])
all
try
val companions = ac.api
val all =
Seq(companions.classApi: Definition, companions.objectApi: Definition) ++
(companions.classApi.structure.declared.toSeq: Seq[Definition]) ++
(companions.classApi.structure.inherited.toSeq: Seq[Definition]) ++
(companions.objectApi.structure.declared.toSeq: Seq[Definition]) ++
(companions.objectApi.structure.inherited.toSeq: Seq[Definition])
all
catch
case NonFatal(e) =>
if e.getMessage.startsWith("No companions") then Nil
else throw e
}.toSeq
}
def discover(