Skip to content
Snippets Groups Projects
Commit c9000256 authored by Etienne Kneuss's avatar Etienne Kneuss
Browse files

Relax the way we report slow tests. Enforce types on set operations

parent 11e6dc97
No related branches found
No related tags found
No related merge requests found
...@@ -478,9 +478,15 @@ object Trees { ...@@ -478,9 +478,15 @@ object Trees {
case class SubsetOf(set1: Expr, set2: Expr) extends Expr with FixedType { case class SubsetOf(set1: Expr, set2: Expr) extends Expr with FixedType {
val fixedType = BooleanType val fixedType = BooleanType
} }
case class SetIntersection(set1: Expr, set2: Expr) extends Expr case class SetIntersection(set1: Expr, set2: Expr) extends Expr {
case class SetUnion(set1: Expr, set2: Expr) extends Expr leastUpperBound(Seq(set1, set2).map(_.getType)).foreach(setType _)
case class SetDifference(set1: Expr, set2: Expr) extends Expr }
case class SetUnion(set1: Expr, set2: Expr) extends Expr {
leastUpperBound(Seq(set1, set2).map(_.getType)).foreach(setType _)
}
case class SetDifference(set1: Expr, set2: Expr) extends Expr {
leastUpperBound(Seq(set1, set2).map(_.getType)).foreach(setType _)
}
case class SetMin(set: Expr) extends Expr case class SetMin(set: Expr) extends Expr
case class SetMax(set: Expr) extends Expr case class SetMax(set: Expr) extends Expr
......
...@@ -96,8 +96,10 @@ trait LeonTestSuite extends FunSuite with Timeouts { ...@@ -96,8 +96,10 @@ trait LeonTestSuite extends FunSuite with Timeouts {
} }
override def test(name: String, tags: Tag*)(body: => Unit) { override def test(name: String, tags: Tag*)(body: => Unit) {
super.test(name, tags: _*) { super.test(name, tags: _*) {
val id = testIdentifier(name) val id = testIdentifier(name)
val ts = now() val ts = now()
testContext = generateContext testContext = generateContext
...@@ -111,7 +113,7 @@ trait LeonTestSuite extends FunSuite with Timeouts { ...@@ -111,7 +113,7 @@ trait LeonTestSuite extends FunSuite with Timeouts {
val stats = getStats(id) val stats = getStats(id)
if (!stats.accountsFor(total)) { if (!stats.accountsFor(total)) {
fail("Test took too long to run: "+total+"ms (avg: "+stats.avg+", stddev: "+stats.stddev+")") info(Console.YELLOW+"[warning] Test took too long to run: "+total+"ms (avg: "+stats.avg+", stddev: "+stats.stddev+")")
} }
storeStats(id, stats.withValue(total)) storeStats(id, stats.withValue(total))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment