package com.battery.device.simulator; import static org.junit.jupiter.api.Assertions.assertEquals; import org.junit.jupiter.api.Test; import com.battery.device.model.ChannelIdentity; import com.battery.device.model.DeviceConnectionStatus; import com.battery.device.model.DeviceWorkStatus; class SimulatorObservationAdapterContractTest { @Test void simulatorCanBeUsedDirectlyThroughTheVendorNeutralContract() throws Exception { try (BtsDevelopmentSimulator simulator = new BtsDevelopmentSimulator(0)) { ChannelIdentity channel = simulator.discoverChannels().get(0).identity(); simulator.updateChannel(channel.devid(), channel.chlid(), true, DeviceWorkStatus.WORKING); var observation = simulator.observe(java.util.Set.of(channel)).get(channel); assertEquals("dev-sim", simulator.adapterCode()); assertEquals(DeviceConnectionStatus.ONLINE, observation.connectionStatus()); assertEquals(DeviceWorkStatus.WORKING, observation.workStatus()); } } }