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

32 lines
735 B
Scala
Raw Normal View History

package sbt
2009-08-16 20:29:08 +02:00
import java.io.File
import Types.:+:
2009-08-16 20:29:08 +02:00
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 Cache._
import FileInfo.hash._
2010-11-10 02:43:58 +01:00
import Ordering._
import sbinary.DefaultProtocol.FileFormat
2009-12-12 00:56:09 +01:00
def test
2009-08-16 20:29:08 +02:00
{
2010-06-07 16:50:51 +02:00
lazy val create = new File("test")
2009-08-16 20:29:08 +02:00
2010-06-07 16:50:51 +02:00
val length = cached(lengthCache) {
(f: File) => { println("File length: " + f.length); f.length }
}
2009-12-12 00:56:09 +01:00
2010-06-07 16:50:51 +02:00
lazy val fileLength = length(create)
2009-12-12 00:56:09 +01:00
val c = cached(cCache) { (in: (File :+: Long :+: HNil)) =>
val file :+: len :+: HNil = in
2010-06-07 16:50:51 +02:00
println("File: " + file + " (" + file.exists + "), length: " + len)
(len+1) :+: file :+: HNil
2010-06-07 16:50:51 +02:00
}
c(create :+: fileLength :+: HNil)
2009-08-16 20:29:08 +02:00
}
}