mirror of https://github.com/sbt/sbt.git
implemente using PrettyPrinter instead of CompactPrinter (#8773)
This commit is contained in:
parent
167b5d04ba
commit
2f14fd8bb1
|
|
@ -3,7 +3,7 @@ package lmcoursier.internal
|
|||
import java.io.File
|
||||
import java.nio.file.Files
|
||||
import java.nio.charset.StandardCharsets
|
||||
import sjsonnew.support.scalajson.unsafe.{ CompactPrinter, Converter, Parser }
|
||||
import sjsonnew.support.scalajson.unsafe.{ Converter, Parser, PrettyPrinter }
|
||||
import scala.util.{ Try, Success, Failure }
|
||||
|
||||
object LockFile {
|
||||
|
|
@ -29,7 +29,7 @@ object LockFile {
|
|||
def write(lockFile: File, data: LockFileData): Either[String, Unit] = {
|
||||
Try {
|
||||
val json = Converter.toJson(data).get
|
||||
val content = CompactPrinter(json)
|
||||
val content = PrettyPrinter(json)
|
||||
lockFile.getParentFile.mkdirs()
|
||||
Files.write(lockFile.toPath, content.getBytes(StandardCharsets.UTF_8))
|
||||
} match {
|
||||
|
|
|
|||
|
|
@ -104,6 +104,27 @@ class LockFileSpec extends AnyFunSuite {
|
|||
}
|
||||
}
|
||||
|
||||
test("LockFile.write outputs pretty JSON") {
|
||||
val lockData = LockFileData(
|
||||
version = "1.0",
|
||||
buildClock = "pretty-test",
|
||||
configurations = Vector.empty,
|
||||
metadata = LockFileMetadata(
|
||||
sbtVersion = "2.0.0",
|
||||
scalaVersion = Some("3.8.1")
|
||||
)
|
||||
)
|
||||
|
||||
IO.withTemporaryDirectory { dir =>
|
||||
val lockFile = new File(dir, "pretty.lock")
|
||||
val writeResult = LockFile.write(lockFile, lockData)
|
||||
assert(writeResult.isRight, s"Write failed: ${writeResult.left.getOrElse("")}")
|
||||
|
||||
val content = IO.read(lockFile)
|
||||
assert(content.contains("\n"), "Expected pretty-printed JSON with multiple lines")
|
||||
}
|
||||
}
|
||||
|
||||
test("cacheFileToOriginalUrl converts cache file URL to HTTP URL") {
|
||||
IO.withTemporaryDirectory { cacheDir =>
|
||||
val fileUrl =
|
||||
|
|
|
|||
Loading…
Reference in New Issue