summaryrefslogtreecommitdiff
path: root/opendc-trace/opendc-trace-opendc/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'opendc-trace/opendc-trace-opendc/src/test')
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt31
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/interference-model.json20
2 files changed, 50 insertions, 1 deletions
diff --git a/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt b/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
index bfe0f881..2b678ff5 100644
--- a/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
+++ b/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
@@ -41,7 +41,7 @@ internal class OdcVmTraceFormatTest {
fun testTables() {
val path = Paths.get("src/test/resources/trace-v2.1")
- assertEquals(listOf(TABLE_RESOURCES, TABLE_RESOURCE_STATES), format.getTables(path))
+ assertEquals(listOf(TABLE_RESOURCES, TABLE_RESOURCE_STATES, TABLE_INTERFERENCE_GROUPS), format.getTables(path))
}
@Test
@@ -93,4 +93,33 @@ internal class OdcVmTraceFormatTest {
reader.close()
}
+
+ @Test
+ fun testInterferenceGroups() {
+ val path = Paths.get("src/test/resources/trace-v2.1")
+ val reader = format.newReader(path, TABLE_INTERFERENCE_GROUPS)
+
+ assertAll(
+ { assertTrue(reader.nextRow()) },
+ { assertEquals(setOf("1019", "1023", "1052"), reader.get(INTERFERENCE_GROUP_MEMBERS)) },
+ { assertEquals(0.0, reader.get(INTERFERENCE_GROUP_TARGET)) },
+ { assertEquals(0.8830158730158756, reader.get(INTERFERENCE_GROUP_SCORE)) },
+ { assertTrue(reader.nextRow()) },
+ { assertEquals(setOf("1023", "1052", "1073"), reader.get(INTERFERENCE_GROUP_MEMBERS)) },
+ { assertEquals(0.0, reader.get(INTERFERENCE_GROUP_TARGET)) },
+ { assertEquals(0.7133055555552751, reader.get(INTERFERENCE_GROUP_SCORE)) },
+ { assertFalse(reader.nextRow()) }
+ )
+
+ reader.close()
+ }
+
+ @Test
+ fun testInterferenceGroupsEmpty() {
+ val path = Paths.get("src/test/resources/trace-v2.0")
+ val reader = format.newReader(path, TABLE_INTERFERENCE_GROUPS)
+
+ assertFalse(reader.nextRow())
+ reader.close()
+ }
}
diff --git a/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/interference-model.json b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/interference-model.json
new file mode 100644
index 00000000..6a0616d9
--- /dev/null
+++ b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/interference-model.json
@@ -0,0 +1,20 @@
+[
+ {
+ "vms": [
+ "1019",
+ "1023",
+ "1052"
+ ],
+ "minServerLoad": 0.0,
+ "performanceScore": 0.8830158730158756
+ },
+ {
+ "vms": [
+ "1023",
+ "1052",
+ "1073"
+ ],
+ "minServerLoad": 0.0,
+ "performanceScore": 0.7133055555552751
+ }
+]