summaryrefslogtreecommitdiff
path: root/opendc-compute/opendc-compute-simulator/src/test
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2022-09-22 11:12:01 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2022-09-22 14:49:37 +0200
commit8b6c15193281171bcb2e111f339ffb8da385332b (patch)
tree959be1b2134af3e947b6b1a172d9b09ebc0c4fbc /opendc-compute/opendc-compute-simulator/src/test
parent21270e0b4250bd6927e85227fa825cf8ed59aaed (diff)
refactor(compute): Simplify constructor of SimHost
This change updates the constructor of SimHost to receive a `SimBareMetalMachine` and `SimHypervisor` directly instead of construction these objects itself. This ensures better testability and also simplifies the constructor of this class, especially when future changes to `SimBareMetalMachine` or `SimHypervisor` change their constructors.
Diffstat (limited to 'opendc-compute/opendc-compute-simulator/src/test')
-rw-r--r--opendc-compute/opendc-compute-simulator/src/test/kotlin/org/opendc/compute/simulator/SimHostTest.kt25
1 files changed, 14 insertions, 11 deletions
diff --git a/opendc-compute/opendc-compute-simulator/src/test/kotlin/org/opendc/compute/simulator/SimHostTest.kt b/opendc-compute/opendc-compute-simulator/src/test/kotlin/org/opendc/compute/simulator/SimHostTest.kt
index 0b2285e5..06500a06 100644
--- a/opendc-compute/opendc-compute-simulator/src/test/kotlin/org/opendc/compute/simulator/SimHostTest.kt
+++ b/opendc-compute/opendc-compute-simulator/src/test/kotlin/org/opendc/compute/simulator/SimHostTest.kt
@@ -30,11 +30,14 @@ import org.junit.jupiter.api.assertAll
import org.opendc.compute.api.*
import org.opendc.compute.service.driver.Host
import org.opendc.compute.service.driver.HostListener
-import org.opendc.simulator.compute.kernel.SimFairShareHypervisorProvider
+import org.opendc.simulator.compute.SimBareMetalMachine
+import org.opendc.simulator.compute.kernel.SimFairShareHypervisor
import org.opendc.simulator.compute.model.MachineModel
import org.opendc.simulator.compute.model.MemoryUnit
import org.opendc.simulator.compute.model.ProcessingNode
import org.opendc.simulator.compute.model.ProcessingUnit
+import org.opendc.simulator.compute.power.ConstantPowerModel
+import org.opendc.simulator.compute.power.SimplePowerDriver
import org.opendc.simulator.compute.workload.SimTrace
import org.opendc.simulator.compute.workload.SimTraceFragment
import org.opendc.simulator.compute.workload.SimTraceWorkload
@@ -67,16 +70,16 @@ internal class SimHostTest {
fun testOvercommitted() = runBlockingSimulation {
val duration = 5 * 60L
val engine = FlowEngine(coroutineContext, clock)
- val random = SplittableRandom(1)
+ val machine = SimBareMetalMachine(engine, machineModel, SimplePowerDriver(ConstantPowerModel(0.0)))
+ val hypervisor = SimFairShareHypervisor(engine, null, SplittableRandom(1))
val host = SimHost(
uid = UUID.randomUUID(),
name = "test",
- model = machineModel,
meta = emptyMap(),
coroutineContext,
- engine,
- SimFairShareHypervisorProvider(),
- random,
+ clock,
+ machine,
+ hypervisor
)
val vmImageA = MockImage(
UUID.randomUUID(),
@@ -151,16 +154,16 @@ internal class SimHostTest {
fun testFailure() = runBlockingSimulation {
val duration = 5 * 60L
val engine = FlowEngine(coroutineContext, clock)
- val random = SplittableRandom(1)
+ val machine = SimBareMetalMachine(engine, machineModel, SimplePowerDriver(ConstantPowerModel(0.0)))
+ val hypervisor = SimFairShareHypervisor(engine, null, SplittableRandom(1))
val host = SimHost(
uid = UUID.randomUUID(),
name = "test",
- model = machineModel,
meta = emptyMap(),
coroutineContext,
- engine,
- SimFairShareHypervisorProvider(),
- random
+ clock,
+ machine,
+ hypervisor
)
val image = MockImage(
UUID.randomUUID(),