diff --git a/.travis.yml b/.travis.yml index 3401abbcca1e4dad160239a07df96228bf57cdeb..65fac10ea25ce4264d85450cd601cce5f26d2bb1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,5 @@ language: scala -before_script: - - sbt script - scala: - 2.11.2 jdk: @@ -16,4 +13,12 @@ notifications: email: - ekneuss@gmail.com - philippe.suter@gmail.com + - regwblanc@gmail.com irc: "chat.freenode.net#epfl-lara" + +before_script: + - sbt compile + - sbt script + +script: + - sbt -jvm-opts travis/jvmopts test diff --git a/build.sbt b/build.sbt index da45aba9e4de0686e00b5b10ae4f648b945e0655..66bbea260f6c18d3295d9410145a259723ead01b 100644 --- a/build.sbt +++ b/build.sbt @@ -37,7 +37,7 @@ logBuffered in Test := false testOptions in Test += Tests.Argument("-oDF") -javaOptions in (Test,run) ++= Seq("-Xss32M", "-Xmx3G") +javaOptions in (Test,run) ++= Seq("-Xss32M", "-Xmx3G", "-XX:MaxPermSize=1024M") parallelExecution in test := false diff --git a/src/test/resources/regression/verification/purescala/valid/Heap.scala b/src/test/resources/regression/verification/purescala/valid/Heap.scala index f1464e8bcfbacf1b4ea2bc721e104d9309a98b44..260cc858364b8bd702de2d686745f0a6173fe510 100644 --- a/src/test/resources/regression/verification/purescala/valid/Heap.scala +++ b/src/test/resources/regression/verification/purescala/valid/Heap.scala @@ -7,25 +7,25 @@ object Heaps { /*~~~~~~~~~~~~~~~~~~~~~~~*/ /* Data type definitions */ /*~~~~~~~~~~~~~~~~~~~~~~~*/ - private case class Node(rank : BigInt, elem : BigInt, nodes : Heap) + private case class Node(rank : BigInt, elem : Int, nodes : Heap) sealed abstract class Heap private case class Nodes(head : Node, tail : Heap) extends Heap private case object Empty extends Heap sealed abstract class OptInt - case class Some(value : BigInt) extends OptInt + case class Some(value : Int) extends OptInt case object None extends OptInt /*~~~~~~~~~~~~~~~~~~~~~~~*/ /* Abstraction functions */ /*~~~~~~~~~~~~~~~~~~~~~~~*/ - def heapContent(h : Heap) : Set[BigInt] = h match { - case Empty => Set.empty[BigInt] + def heapContent(h : Heap) : Set[Int] = h match { + case Empty => Set.empty[Int] case Nodes(n, ns) => nodeContent(n) ++ heapContent(ns) } - def nodeContent(n : Node) : Set[BigInt] = n match { + def nodeContent(n : Node) : Set[Int] = n match { case Node(_, e, h) => Set(e) ++ heapContent(h) } @@ -78,13 +78,13 @@ object Heaps { /*~~~~~~~~~~~~~~~~*/ def empty() : Heap = { Empty - } ensuring(res => heapContent(res) == Set.empty[BigInt]) + } ensuring(res => heapContent(res) == Set.empty[Int]) def isEmpty(h : Heap) : Boolean = { (h == Empty) - } ensuring(res => res == (heapContent(h) == Set.empty[BigInt])) + } ensuring(res => res == (heapContent(h) == Set.empty[Int])) - def insert(e : BigInt, h : Heap) : Heap = { + def insert(e : Int, h : Heap) : Heap = { insertNode(Node(0, e, Empty), h) } ensuring(res => heapContent(res) == heapContent(h) ++ Set(e)) @@ -139,9 +139,9 @@ object Heaps { }.holds def sanity3() : Boolean = { - val h0 = insert(42, insert(0, insert(3, insert(12, Empty)))) + val h0 = insert(42, insert(0, insert(12, Empty))) val h1 = deleteMin(h0) - findMin(h1) == Some(3) + findMin(h1) == Some(12) }.holds } diff --git a/travis/jvmopts b/travis/jvmopts new file mode 100644 index 0000000000000000000000000000000000000000..2e8e35bb8fb0c618b6d8a53de445332a4ae8a35c --- /dev/null +++ b/travis/jvmopts @@ -0,0 +1,6 @@ +-Dfile.encoding=UTF8 +-Xms2G +-Xmx3G +-Xss6M +-XX:MaxPermSize=700M +-XX:ReservedCodeCacheSize=256M