diff options
author | marius a. eriksen <marius@twitter.com> | 2010-11-19 14:13:38 -0800 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-11-07 02:08:37 -0500 |
commit | ed06f0fcc0539646416dac922e34f4fcc4595487 (patch) | |
tree | 7f6b27b20281e5a2e198e0f8452f22a69d36f8bb /libraries/eval/test/EvalTest.scala | |
parent | 54fe2f15640ba71f01f3bd6637270ce4b7ac3420 (diff) | |
download | cbt-ed06f0fcc0539646416dac922e34f4fcc4595487.tar.gz cbt-ed06f0fcc0539646416dac922e34f4fcc4595487.tar.bz2 cbt-ed06f0fcc0539646416dac922e34f4fcc4595487.zip |
- add support for evaluating from streams
- use test resources when testing, not paths relative to project root
Diffstat (limited to 'libraries/eval/test/EvalTest.scala')
-rw-r--r-- | libraries/eval/test/EvalTest.scala | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/libraries/eval/test/EvalTest.scala b/libraries/eval/test/EvalTest.scala index bdb3d65..abf63d7 100644 --- a/libraries/eval/test/EvalTest.scala +++ b/libraries/eval/test/EvalTest.scala @@ -1,21 +1,39 @@ package com.twitter.util import org.specs.Specification -import java.io.File +import java.io.{File, FileOutputStream} object EvaluatorSpec extends Specification { + def file(path: String) = { + val stream = getClass.getResourceAsStream(path) + val file = File.createTempFile(path, "scala") + val fos = new FileOutputStream(file) + + var byte = stream.read() + while (byte != -1) { + fos.write(byte) + byte = stream.read() + } + + file + } + "Evaluator" should { "apply('expression')" in { Eval[Int]("1 + 1") mustEqual 2 } "apply(new File(...))" in { - Eval[Int](new File("src/test/resources/OnePlusOne.scala")) mustEqual 2 + Eval[Int](file("/OnePlusOne.scala")) mustEqual 2 } "apply(new File(...), new File(...))" in { - val derived = Eval[() => String](new File("src/test/resources/Base.scala"), new File("src/test/resources/Derived.scala")) + val derived = Eval[() => String](file("/Base.scala"), file("/Derived.scala")) derived() mustEqual "hello" } + + "apply(InputStream)" in { + Eval[Int](getClass.getResourceAsStream("/OnePlusOne.scala")) mustEqual 2 + } } } |