Skip to content

Commit 38a993f

Browse files
committed
test_fuzzy actually uses fingerprint hardcoding
1 parent 7c52da2 commit 38a993f

File tree

1 file changed

+25
-16
lines changed

1 file changed

+25
-16
lines changed

selfdrive/test/process_replay/process_replay.py

+25-16
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
from common.params import Params
1616
from common.timeout import Timeout
1717
from selfdrive.car.fingerprints import FW_VERSIONS
18-
from selfdrive.car.car_helpers import get_car
18+
from selfdrive.car.car_helpers import get_car, interfaces
1919
from selfdrive.test.process_replay.helpers import OpenpilotPrefix
2020
from selfdrive.manager.process import PythonProcess
2121
from selfdrive.manager.process_config import managed_processes
@@ -176,14 +176,18 @@ def fingerprint(msgs, fsm, can_sock):
176176
fsm.update_ready.set()
177177

178178

179-
def get_car_params(msgs, fsm, can_sock):
180-
can = FakeSocket(wait=False)
181-
sendcan = FakeSocket(wait=False)
179+
def get_car_params(msgs, fsm, can_sock, fingerprint):
180+
if fingerprint:
181+
CarInterface, _, _ = interfaces[fingerprint]
182+
CP = CarInterface.get_params(fingerprint)
183+
else:
184+
can = FakeSocket(wait=False)
185+
sendcan = FakeSocket(wait=False)
182186

183-
canmsgs = [msg for msg in msgs if msg.which() == 'can']
184-
for m in canmsgs[:300]:
185-
can.send(m.as_builder().to_bytes())
186-
_, CP = get_car(can, sendcan)
187+
canmsgs = [msg for msg in msgs if msg.which() == 'can']
188+
for m in canmsgs[:300]:
189+
can.send(m.as_builder().to_bytes())
190+
_, CP = get_car(can, sendcan)
187191
Params().put("CarParams", CP.to_bytes())
188192

189193
def controlsd_rcv_callback(msg, CP, cfg, fsm):
@@ -336,12 +340,12 @@ def ublox_rcv_callback(msg):
336340
]
337341

338342

339-
def replay_process(cfg, lr):
343+
def replay_process(cfg, lr, fingerprint=None):
340344
with OpenpilotPrefix():
341345
if cfg.fake_pubsubmaster:
342-
return python_replay_process(cfg, lr)
346+
return python_replay_process(cfg, lr, fingerprint)
343347
else:
344-
return cpp_replay_process(cfg, lr)
348+
return cpp_replay_process(cfg, lr, fingerprint)
345349

346350
def setup_env(simulation=False, CP=None):
347351
params = Params()
@@ -370,7 +374,7 @@ def setup_env(simulation=False, CP=None):
370374
os.environ['SKIP_FW_QUERY'] = "1"
371375
os.environ['FINGERPRINT'] = CP.carFingerprint
372376

373-
def python_replay_process(cfg, lr):
377+
def python_replay_process(cfg, lr, fingerprint=None):
374378
sub_sockets = [s for _, sub in cfg.pub_sub.items() for s in sub]
375379
pub_sockets = [s for s in cfg.pub_sub.keys() if s != 'can']
376380

@@ -384,8 +388,13 @@ def python_replay_process(cfg, lr):
384388
all_msgs = sorted(lr, key=lambda msg: msg.logMonoTime)
385389
pub_msgs = [msg for msg in all_msgs if msg.which() in list(cfg.pub_sub.keys())]
386390

387-
CP = [m for m in lr if m.which() == 'carParams'][0].carParams
388-
setup_env(CP=CP)
391+
if fingerprint is not None:
392+
os.environ['SKIP_FW_QUERY'] = "1"
393+
os.environ['FINGERPRINT'] = fingerprint
394+
setup_env()
395+
else:
396+
CP = [m for m in lr if m.which() == 'carParams'][0].carParams
397+
setup_env(CP=CP)
389398

390399
assert(type(managed_processes[cfg.proc_name]) is PythonProcess)
391400
managed_processes[cfg.proc_name].prepare()
@@ -398,7 +407,7 @@ def python_replay_process(cfg, lr):
398407
if cfg.init_callback is not None:
399408
if 'can' not in list(cfg.pub_sub.keys()):
400409
can_sock = None
401-
cfg.init_callback(all_msgs, fsm, can_sock)
410+
cfg.init_callback(all_msgs, fsm, can_sock, fingerprint)
402411

403412
CP = car.CarParams.from_bytes(Params().get("CarParams", block=True))
404413

@@ -437,7 +446,7 @@ def python_replay_process(cfg, lr):
437446
return log_msgs
438447

439448

440-
def cpp_replay_process(cfg, lr):
449+
def cpp_replay_process(cfg, lr, fingerprint=None):
441450
sub_sockets = [s for _, sub in cfg.pub_sub.items() for s in sub] # We get responses here
442451
pm = messaging.PubMaster(cfg.pub_sub.keys())
443452

0 commit comments

Comments
 (0)