summaryrefslogtreecommitdiff
path: root/opendc/opendc-format
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-05 22:35:24 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-06 11:42:20 +0200
commit48f6a6f2d42851bc2eeed5b6ef41145740c70286 (patch)
treec42f2a5b08923e91b0afad4bc686b298c165a1ea /opendc/opendc-format
parent2b9b1e9e030dccacf9aa549fc49b2e5e382750bf (diff)
test: Add initial integration test for SC20 experiments
Diffstat (limited to 'opendc/opendc-format')
-rw-r--r--opendc/opendc-format/src/main/kotlin/com/atlarge/opendc/format/environment/sc20/Sc20ClusterEnvironmentReader.kt11
1 files changed, 7 insertions, 4 deletions
diff --git a/opendc/opendc-format/src/main/kotlin/com/atlarge/opendc/format/environment/sc20/Sc20ClusterEnvironmentReader.kt b/opendc/opendc-format/src/main/kotlin/com/atlarge/opendc/format/environment/sc20/Sc20ClusterEnvironmentReader.kt
index 2ef0db97..e34ee2dc 100644
--- a/opendc/opendc-format/src/main/kotlin/com/atlarge/opendc/format/environment/sc20/Sc20ClusterEnvironmentReader.kt
+++ b/opendc/opendc-format/src/main/kotlin/com/atlarge/opendc/format/environment/sc20/Sc20ClusterEnvironmentReader.kt
@@ -38,9 +38,9 @@ import com.atlarge.opendc.core.Platform
import com.atlarge.opendc.core.Zone
import com.atlarge.opendc.core.services.ServiceRegistry
import com.atlarge.opendc.format.environment.EnvironmentReader
-import java.io.BufferedReader
import java.io.File
-import java.io.FileReader
+import java.io.FileInputStream
+import java.io.InputStream
import java.util.Random
import java.util.UUID
@@ -50,8 +50,11 @@ import java.util.UUID
* @param environmentFile The file describing the physical cluster.
*/
class Sc20ClusterEnvironmentReader(
- private val environmentFile: File
+ private val input: InputStream
) : EnvironmentReader {
+
+ constructor(file: File) : this(FileInputStream(file))
+
@Suppress("BlockingMethodInNonBlockingContext")
override suspend fun construct(dom: Domain): Environment {
var clusterIdCol = 0
@@ -70,7 +73,7 @@ class Sc20ClusterEnvironmentReader(
val nodes = mutableListOf<SimpleBareMetalDriver>()
val random = Random(0)
- BufferedReader(FileReader(environmentFile)).use { reader ->
+ input.bufferedReader().use { reader ->
reader.lineSequence()
.filter { line ->
// Ignore comments in the file