diff options
author | Lukas Rytz <lukas.rytz@typesafe.com> | 2015-09-21 15:53:52 +0200 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@typesafe.com> | 2015-09-21 15:53:52 +0200 |
commit | 7eadd684678611dc0f6710f9fdd14ff52bf8fb78 (patch) | |
tree | 4e625c025ecf8ce5a9a4043dc13c77e54ba884f1 /test/files/run | |
parent | 7f1defca22b719b16814626b0218d12e24d5f149 (diff) | |
parent | 00d3f103b3db5530bfbf6b565843d0938a3cef48 (diff) | |
download | scala-7eadd684678611dc0f6710f9fdd14ff52bf8fb78.tar.gz scala-7eadd684678611dc0f6710f9fdd14ff52bf8fb78.tar.bz2 scala-7eadd684678611dc0f6710f9fdd14ff52bf8fb78.zip |
Merge pull request #4716 from Ichoran/issue/9388
SI-9388 Fix Range behavior around Int.MaxValue
Diffstat (limited to 'test/files/run')
-rw-r--r-- | test/files/run/t4658.check | 7 | ||||
-rw-r--r-- | test/files/run/t4658.scala | 11 |
2 files changed, 15 insertions, 3 deletions
diff --git a/test/files/run/t4658.check b/test/files/run/t4658.check index bb6405175e..3bc52daef3 100644 --- a/test/files/run/t4658.check +++ b/test/files/run/t4658.check @@ -1,5 +1,5 @@ Ranges: -1073741824 +-1073741824 1073741824 0 0 @@ -20,7 +20,7 @@ Ranges: -10 IntRanges: -1073741824 --1073741824 +1073741824 0 0 55 @@ -78,3 +78,6 @@ BigIntRanges: -24 -30 -10 +BigInt agrees with Long: true +Long agrees with Int when rounded: true +Numeric Int agrees with Range: true diff --git a/test/files/run/t4658.scala b/test/files/run/t4658.scala index 8c07c50694..7fc6d4584c 100644 --- a/test/files/run/t4658.scala +++ b/test/files/run/t4658.scala @@ -2,6 +2,7 @@ import scala.collection.immutable.NumericRange //#4658 object Test { + // Only works for Int values! Need to rethink explicit otherwise. case class R(start: Int, end: Int, step: Int = 1, inclusive: Boolean = true) val rangeData = Array( @@ -28,6 +29,14 @@ object Test { numericLongRanges.foreach{range => println(range.sum)} println("BigIntRanges:") numericBigIntRanges.foreach{range => println(range.sum)} + println("BigInt agrees with Long: " + + (numericLongRanges zip numericBigIntRanges).forall{ case (lr, bir) => lr.sum == bir.sum } + ) + println("Long agrees with Int when rounded: " + + (numericLongRanges zip numericIntRanges).forall{ case (lr, ir) => lr.sum.toInt == ir.sum } + ) + println("Numeric Int agrees with Range: " + + (numericIntRanges zip ranges).forall{ case (ir, r) => ir.sum == r.sum } + ) } - }
\ No newline at end of file |