blob: 3cb3dc6ca8c63e0e7d3c8654a728c892d5aeaa25 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
package scala.tools.partest
import scala.util.{Try,Success,Failure}
import java.lang.System.{out => sysout}
/** A trait for testing repl's javap command
* or possibly examining its output.
*/
abstract class JavapTest extends ReplTest {
/** Your Assertion Here, whatever you want to bejahen.
* Assertions must be satisfied by all flavors of javap
* and should not be fragile with respect to compiler output.
*/
def yah(res: Seq[String]): Boolean
def baddies = List(":javap unavailable", ":javap not yet working")
// give it a pass if javap is broken
override def show() = try {
val res = eval().toSeq
val unsupported = res exists (s => baddies exists (s contains _))
assert ((unsupported || yah(res)), res.mkString("","\n","\n"))
} catch { case ae: AssertionError => ae.printStackTrace(sysout) }
}
|