From 92f32acd847ea1700590bc669750f23ef499840e Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期六, 05 九月 2026 13:39:44 +0800
Subject: [PATCH] 清理旧测试结构并贯通最终业务数据链路
---
battery-device-simulator/src/test/java/com/battery/device/simulator/SimulatorObservationAdapterContractTest.java | 33 +++++++++++++++++++++++++++++----
1 files changed, 29 insertions(+), 4 deletions(-)
diff --git a/battery-device-simulator/src/test/java/com/battery/device/simulator/SimulatorObservationAdapterContractTest.java b/battery-device-simulator/src/test/java/com/battery/device/simulator/SimulatorObservationAdapterContractTest.java
index 86e331a..4415dab 100644
--- a/battery-device-simulator/src/test/java/com/battery/device/simulator/SimulatorObservationAdapterContractTest.java
+++ b/battery-device-simulator/src/test/java/com/battery/device/simulator/SimulatorObservationAdapterContractTest.java
@@ -1,13 +1,38 @@
package com.battery.device.simulator;
-import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;
-import com.battery.device.model.ChannelIdentity;
-import com.battery.device.model.DeviceConnectionStatus;
-import com.battery.device.model.DeviceWorkStatus;
+import com.battery.device.api.model.ChannelIdentity;
+import com.battery.device.api.model.DeviceConnectionStatus;
+import com.battery.device.api.model.DeviceWorkStatus;
class SimulatorObservationAdapterContractTest
{
+ @Test void persistenceRejectsForeignIdentitiesAndOfflineCachedFacts() throws Exception
+ {
+ try (BtsDevelopmentSimulator simulator = new BtsDevelopmentSimulator(0))
+ {
+ ChannelIdentity channel = simulator.discoverChannels().get(0).identity();
+ simulator.updateChannel(channel.devid(), channel.chlid(), true, DeviceWorkStatus.WORKING);
+ simulator.advanceBts(java.time.Instant.now());
+ assertNotNull(simulator.latestCabinet(channel));
+ for (ChannelIdentity foreign : java.util.List.of(
+ new ChannelIdentity("another-adapter", channel.devtype(), channel.devid(), channel.subdevid(), channel.chlid()),
+ new ChannelIdentity(channel.adapterCode(), 999, channel.devid(), channel.subdevid(), channel.chlid()),
+ new ChannelIdentity(channel.adapterCode(), channel.devtype(), channel.devid(), 999, channel.chlid())))
+ {
+ assertNull(simulator.latestCabinet(foreign));
+ assertNull(simulator.testPlan(foreign));
+ assertTrue(simulator.stepRecords(foreign).isEmpty());
+ assertTrue(simulator.cycleRecords(foreign).isEmpty());
+ }
+ simulator.updateChannel(channel.devid(), channel.chlid(), false, DeviceWorkStatus.WORKING);
+ assertNull(simulator.latestCabinet(channel));
+ assertTrue(simulator.stepRecords(channel).isEmpty());
+ assertTrue(simulator.cycleRecords(channel).isEmpty());
+ }
+ }
+
@Test
void simulatorCanBeUsedDirectlyThroughTheVendorNeutralContract() throws Exception
{
--
Gitblit v1.7.1