From aa63e103d0b3f8e59ab764e6fd778e6d7d6409a3 Mon Sep 17 00:00:00 2001 From: stash Date: Fri, 26 Jun 2026 11:00:08 -0700 Subject: [PATCH] test: remove flaky skipped test_basic_deployment test_basic_deployment was marked skipif_in_ci so it never ran in CI, and failed locally for timing reasons: it deploys two modules in separate worker processes over LCM and asserts a sustained ~10Hz message rate (>=8 messages in a fixed window). That wall-clock throughput assertion races worker startup and is inherently flaky. The cross-process deploy + LCMTransport/pLCMTransport publish/subscribe + RPC behavior it exercised is already covered by CI-active tests (test_stream.py reuses the same MockRobotClient; test_rpcstress.py, test_module_coordinator.py, test_async_module_dispatch_serialization.py). Drop the now-unused MockRobotClient/LCMTransport/pLCMTransport/pytest imports along with it. --- dimos/core/test_core.py | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/dimos/core/test_core.py b/dimos/core/test_core.py index 22cbca31b3..a578f36158 100644 --- a/dimos/core/test_core.py +++ b/dimos/core/test_core.py @@ -14,14 +14,11 @@ import time -import pytest from reactivex.disposable import Disposable from dimos.core.core import rpc from dimos.core.module import Module from dimos.core.stream import In, Out -from dimos.core.testing import MockRobotClient -from dimos.core.transport import LCMTransport, pLCMTransport from dimos.msgs.geometry_msgs.Vector3 import Vector3 from dimos.msgs.sensor_msgs.PointCloud2 import PointCloud2 from dimos.robot.unitree.type.odometry import Odometry @@ -90,34 +87,3 @@ def test_classmethods() -> None: assert hasattr(class_rpcs["start"], "__rpc__"), "start should have __rpc__ attribute" nav._close_module() - - -@pytest.mark.skipif_in_ci -def test_basic_deployment(dimos) -> None: - robot = dimos.deploy(MockRobotClient) - - print("\n") - print("lidar stream", robot.lidar) - print("odom stream", robot.odometry) - - nav = dimos.deploy(Navigation) - - # this one encodes proper LCM messages - robot.lidar.transport = LCMTransport("/lidar", PointCloud2) - - # odometry & mov using just a pickle over LCM - robot.odometry.transport = pLCMTransport("/odom") - nav.mov.transport = pLCMTransport("/mov") - - nav.lidar.connect(robot.lidar) - nav.odometry.connect(robot.odometry) - robot.mov.connect(nav.mov) - - robot.start() - nav.start() - - time.sleep(1) - - assert robot.mov_msg_count >= 8 - assert nav.odom_msg_count >= 8 - assert nav.lidar_msg_count >= 8