summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2017-10-29 10:58:57 -0700
committerLi Haoyi <haoyi.sg@gmail.com>2017-10-29 10:58:57 -0700
commitd3ac2ca2c3a581152323d315d3765a18c2fb02c0 (patch)
treea84748888f6fa501f962f88b0000672742cbe17f /src/test
parent1b940e9c1341f6f8e42293661b6dcdbffecbe66e (diff)
downloadmill-d3ac2ca2c3a581152323d315d3765a18c2fb02c0.tar.gz
mill-d3ac2ca2c3a581152323d315d3765a18c2fb02c0.tar.bz2
mill-d3ac2ca2c3a581152323d315d3765a18c2fb02c0.zip
WIP
- Making `groupAroundNamedTargets` return a `MutableBiMap` - Make `evaluateGroupCached` also take note of the `sideHash`es of upstream targets, to handle cases like `Path`s where the path you're returning doesn't change but we still want to invalidate it anyway
Diffstat (limited to 'src/test')
-rw-r--r--src/test/scala/forge/GraphTests.scala17
-rw-r--r--src/test/scala/forge/Main.scala21
2 files changed, 17 insertions, 21 deletions
diff --git a/src/test/scala/forge/GraphTests.scala b/src/test/scala/forge/GraphTests.scala
index 86955fda..5cfea75d 100644
--- a/src/test/scala/forge/GraphTests.scala
+++ b/src/test/scala/forge/GraphTests.scala
@@ -81,16 +81,15 @@ object GraphTests extends TestSuite{
target: Target.Test,
expected: OSet[(OSet[Target.Test], Int)]) = {
- val mapping: Map[Target[_], Seq[String]] = {
- implicitly[Discovered[T]].apply(base).map(_.swap).toMap
- }
- val grouped = Evaluator.groupAroundNamedTargets(
- Evaluator.topoSortedTransitiveTargets(OSet(target)),
- mapping
- )
- TestUtil.checkTopological(grouped.flatMap(_.items))
+ val mapping = Discovered.mapping(base)
+ val topoSortedTransitive = Evaluator.topoSortedTransitiveTargets(OSet(target))
+
+ val grouped = Evaluator.groupAroundNamedTargets(topoSortedTransitive, mapping)
+ val flattened = OSet.from(grouped.values().flatMap(_.items))
+
+ TestUtil.checkTopological(flattened)
for(((expectedPresent, expectedSize), i) <- expected.items.zipWithIndex){
- val grouping = grouped.items(i)
+ val grouping = grouped.lookupKey(i)
assert(
grouping.size == expectedSize,
grouping.filter(mapping.contains) == expectedPresent
diff --git a/src/test/scala/forge/Main.scala b/src/test/scala/forge/Main.scala
index e4e38b23..99237e32 100644
--- a/src/test/scala/forge/Main.scala
+++ b/src/test/scala/forge/Main.scala
@@ -4,20 +4,17 @@ import java.util.jar.JarEntry
import collection.JavaConverters._
import ammonite.ops._
object Main{
+ val sourceRoot = Target.path(pwd / 'src / 'test / 'resources / 'example / 'src)
+ val resourceRoot = Target.path(pwd / 'src / 'test / 'resources / 'example / 'resources)
+ val allSources = list(sourceRoot)
+ val classFiles = compileAll(allSources)
+ val jar = jarUp(resourceRoot, classFiles)
def main(args: Array[String]): Unit = {
-
- val sourceRoot = Target.path(pwd / 'src / 'test / 'resources / 'example / 'src)
- val resourceRoot = Target.path(pwd / 'src / 'test / 'resources / 'example / 'resources)
- val allSources = list(sourceRoot)
- val classFiles = compileAll(allSources)
- val jar = jarUp(resourceRoot, classFiles)
-
-// val evaluator = new Evaluator(
-// Paths.get("target/workspace"),
-// DefCtx("forge.Main ", None)
-// )
-// evaluator.evaluate(OSet(jar))
+ val mapping = Discovered.mapping(Main)
+ val evaluator = new Evaluator(pwd / 'target / 'workspace / 'main, mapping)
+ val res = evaluator.evaluate(OSet(jar))
+ println(res.evaluated.collect(mapping))
}
def compileAll(sources: Target[Seq[Path]]) = {
new Target.Subprocess(