diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2016-05-16 16:04:17 +1000 |
---|---|---|
committer | Lukas Rytz <lukas.rytz@typesafe.com> | 2016-05-16 08:04:17 +0200 |
commit | eac1af364e99a6712c5e54e257216027b2ab127e (patch) | |
tree | 7913340cff137466511c3d6ca4066fdd55d4aeb9 /src/compiler/scala/tools/nsc/backend/jvm/opt/LocalOpt.scala | |
parent | 9e30bee0c9363f6cf36a7b65ddbaaa225b57d6a9 (diff) | |
download | scala-eac1af364e99a6712c5e54e257216027b2ab127e.tar.gz scala-eac1af364e99a6712c5e54e257216027b2ab127e.tar.bz2 scala-eac1af364e99a6712c5e54e257216027b2ab127e.zip |
Reduce boilerplate in compiler JUnit tests (#5158)
Many JUnit tests share a compiler instance between all
test cases in a class to reduce overhead.
This commit refactors the mechanism to reduce the boilerplate.
In the new scheme:
- Using the `@ClassRule` hook in JUnit, we create a per-class
map for each test class.
- Per-class values are registered from the test class itself
by calling `cached("someKey", () => mkExpensiveThing)`
- At the end of the test, the entries in this map are `close()`-ed
(if they implement `Closable`), and are released for
garbage collection.)
Diffstat (limited to 'src/compiler/scala/tools/nsc/backend/jvm/opt/LocalOpt.scala')
0 files changed, 0 insertions, 0 deletions