diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2014-12-18 14:41:49 +1000 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2014-12-18 14:41:49 +1000 |
commit | c44d2ca0c7e24c98eaaa3c1b5023cfd7cc877ae9 (patch) | |
tree | bd93c44095e6232abc3ad9af2804892025aa5467 /src/test/scala/scala/async/run/SyncOptimizationSpec.scala | |
parent | 49514746c007da44a57f17730e3f6f353456d37c (diff) | |
parent | 697f584f8d7c656111344a0e16c1924feec6896b (diff) | |
download | scala-async-c44d2ca0c7e24c98eaaa3c1b5023cfd7cc877ae9.tar.gz scala-async-c44d2ca0c7e24c98eaaa3c1b5023cfd7cc877ae9.tar.bz2 scala-async-c44d2ca0c7e24c98eaaa3c1b5023cfd7cc877ae9.zip |
Merge pull request #99 from retronym/merge/2.10.x-to-master-20141219
Merge/2.10.x to master 20141219
Diffstat (limited to 'src/test/scala/scala/async/run/SyncOptimizationSpec.scala')
-rw-r--r-- | src/test/scala/scala/async/run/SyncOptimizationSpec.scala | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/scala/scala/async/run/SyncOptimizationSpec.scala b/src/test/scala/scala/async/run/SyncOptimizationSpec.scala new file mode 100644 index 0000000..dd649f4 --- /dev/null +++ b/src/test/scala/scala/async/run/SyncOptimizationSpec.scala @@ -0,0 +1,28 @@ +package scala.async.run + +import org.junit.Test +import scala.async.Async._ +import scala.concurrent._ +import scala.concurrent.duration._ +import ExecutionContext.Implicits._ + +class SyncOptimizationSpec { + @Test + def awaitOnCompletedFutureRunsOnSameThread: Unit = { + + def stackDepth = Thread.currentThread().getStackTrace.size + + val future = async { + val thread1 = Thread.currentThread + val stackDepth1 = stackDepth + + val f = await(Future.successful(1)) + val thread2 = Thread.currentThread + val stackDepth2 = stackDepth + assert(thread1 == thread2) + assert(stackDepth1 == stackDepth2) + } + Await.result(future, 10.seconds) + } + +} |