dependencies added to sbt to compile GildedRoseApprovalTest.java

This commit is contained in:
Ralf Comtesse 2025-10-01 07:32:09 +02:00
parent c27ad4786c
commit 36acc45c3e
3 changed files with 45 additions and 6 deletions

View File

@ -3,9 +3,10 @@ val scala3Version = "3.7.3"
lazy val root = project
.in(file("."))
.settings(
name := "GildedRose",
version := "1.0",
scalaVersion := scala3Version,
libraryDependencies += "org.scalatest" %% "scalatest" % "3.2.19" % "test"
name := "GildedRose",
version := "1.0",
scalaVersion := scala3Version,
libraryDependencies += "org.scalatest" %% "scalatest" % "3.2.19" % "test",
libraryDependencies += "com.approvaltests" % "approvaltests" % "25.4.3" % "test",
libraryDependencies += "org.junit.jupiter" % "junit-jupiter" % "5.11.4" % "test"
)

View File

@ -0,0 +1,38 @@
package com.gildedrose;
import org.approvaltests.Approvals;
import org.approvaltests.reporters.DiffReporter;
import org.approvaltests.reporters.UseReporter;
import org.junit.jupiter.api.Test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
@UseReporter(DiffReporter.class)
public class GildedRoseApprovalTest {
@Test
public void foo() {
Item[] items = new Item[]{new Item("foo", 0, 0)};
GildedRose app = new GildedRose(items);
app.updateQuality();
Approvals.verifyAll("Items", items);
}
@Test
public void thirtyDays() {
ByteArrayOutputStream fakeoutput = new ByteArrayOutputStream();
System.setOut(new PrintStream(fakeoutput));
System.setIn(new ByteArrayInputStream("a\n".getBytes()));
// todo: fix Program
// Program.main();
String output = fakeoutput.toString();
Approvals.verify(output);
}
}

View File

@ -6,7 +6,7 @@ import org.scalatest.matchers.should.Matchers
import java.io.{File, FileOutputStream}
import scala.io.Source
class GildedRoseApprovalTest extends AnyFlatSpec with Matchers {
class GildedRoseApprovalTestInScala extends AnyFlatSpec with Matchers {
it should "return the result of the golden master" in {
val fileWithTestResult = new File("approvaltests/gildedrose.testresult.txt")
val outputStream = new FileOutputStream(fileWithTestResult)