Skip to content
Snippets Groups Projects
Commit 7c8a9778 authored by Benedikt Wetzel's avatar Benedikt Wetzel Committed by Sören Henning
Browse files

Add test for IOHandler

parent 827f30ee
No related branches found
No related tags found
No related merge requests found
...@@ -4,7 +4,6 @@ import com.google.gson.GsonBuilder ...@@ -4,7 +4,6 @@ import com.google.gson.GsonBuilder
import mu.KotlinLogging import mu.KotlinLogging
import java.io.File import java.io.File
import java.io.PrintWriter import java.io.PrintWriter
import java.lang.IllegalArgumentException
private val logger = KotlinLogging.logger {} private val logger = KotlinLogging.logger {}
......
package theodolite.util
import com.google.gson.GsonBuilder
import io.quarkus.test.junit.QuarkusTest
import org.junit.Rule
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.junit.rules.TemporaryFolder
const val FOLDER_URL = "Test-Folder"
@QuarkusTest
internal class IOHandlerTest {
@Rule
var temporaryFolder = TemporaryFolder()
@Test
fun testWriteStringToText() {
temporaryFolder.create()
val testContent = "Test-File-Content"
val folder = temporaryFolder.newFolder(FOLDER_URL)
IOHandler().writeStringToTextFile(
fileURL = "${folder.absolutePath}/test-file.txt",
data = testContent)
assertEquals(
testContent,
IOHandler().readFileAsString("${folder.absolutePath}/test-file.txt")
)
}
@Test
fun testWriteToCSVFile() {
temporaryFolder.create()
val folder = temporaryFolder.newFolder(FOLDER_URL)
val testContent = listOf(
listOf("apples","red"),
listOf("bananas","yellow"),
listOf("avocado","brown"))
val columns = listOf("Fruit", "Color")
IOHandler().writeToCSVFile(
fileURL = "${folder.absolutePath}/test-file",
data = testContent,
columns = columns)
var expected = "Fruit,Color\n"
testContent.forEach { expected += it[0] + "," + it[1] + "\n" }
assertEquals(
expected.trim(),
IOHandler().readFileAsString("${folder.absolutePath}/test-file.csv")
)
}
@Test
fun testWriteToJSONFile() {
temporaryFolder.create()
val folder = temporaryFolder.newFolder(FOLDER_URL)
val testContent = Resource(0, emptyList())
IOHandler().writeToJSONFile(
fileURL = "${folder.absolutePath}/test-file.json",
objectToSave = testContent)
val expected = GsonBuilder().enableComplexMapKeySerialization().setPrettyPrinting().create().toJson(testContent)
assertEquals(
expected,
IOHandler().readFileAsString("${folder.absolutePath}/test-file.json")
)
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment