sbt/cache/src/test/scala/CacheTest.scala

28 lines
815 B
Scala
Raw Normal View History

2009-08-16 20:29:08 +02:00
package xsbt
import java.io.File
object CacheTest// extends Properties("Cache test")
{
2009-12-12 00:56:09 +01:00
val lengthCache = new File("/tmp/length-cache")
val cCache = new File("/tmp/c-cache")
2009-08-16 20:29:08 +02:00
import Task._
import Cache._
import FileInfo.hash._
2009-12-12 00:56:09 +01:00
def test
2009-08-16 20:29:08 +02:00
{
val createTask = Task { new File("test") }
2009-12-12 00:56:09 +01:00
val length = (f: File) => { println("File length: " + f.length); f.length }
val cachedLength = cached(lengthCache) ( length )
val lengthTask = createTask map cachedLength
val c = (file: File, len: Long) => { println("File: " + file + ", length: " + len); len :: file :: HNil }
val cTask = (createTask :: lengthTask :: TNil) map cached(cCache) { case (file :: len :: HNil) => c(file, len) }
2009-08-16 20:29:08 +02:00
2009-12-12 00:56:09 +01:00
try { TaskRunner(cTask) }
catch { case TasksFailed(failures) => failures.foreach(_.exception.printStackTrace) }
2009-08-16 20:29:08 +02:00
}
}