@ -17,8 +17,6 @@ from opendbc.car.car_helpers import FRAME_FINGERPRINT, interfaces
from opendbc . car . honda . values import CAR as HONDA , HondaFlags
from opendbc . car . honda . values import CAR as HONDA , HondaFlags
from opendbc . car . values import Platform
from opendbc . car . values import Platform
from opendbc . car . tests . routes import non_tested_cars , routes , CarTestRoute
from opendbc . car . tests . routes import non_tested_cars , routes , CarTestRoute
from openpilot . selfdrive . selfdrived . events import ET
from openpilot . selfdrive . selfdrived . selfdrived import SelfdriveD
from openpilot . selfdrive . pandad import can_capnp_to_list
from openpilot . selfdrive . pandad import can_capnp_to_list
from openpilot . selfdrive . test . helpers import read_segment_list
from openpilot . selfdrive . test . helpers import read_segment_list
from openpilot . system . hardware . hw import DEFAULT_DOWNLOAD_CACHE_ROOT
from openpilot . system . hardware . hw import DEFAULT_DOWNLOAD_CACHE_ROOT
@ -28,6 +26,7 @@ from openpilot.tools.lib.route import SegmentName
from panda . tests . libpanda import libpanda_py
from panda . tests . libpanda import libpanda_py
ButtonType = car . CarState . ButtonEvent . Type
EventName = log . OnroadEvent . EventName
EventName = log . OnroadEvent . EventName
PandaType = log . PandaState . PandaType
PandaType = log . PandaState . PandaType
SafetyModel = car . CarParams . SafetyModel
SafetyModel = car . CarParams . SafetyModel
@ -384,8 +383,6 @@ class TestCarModelBase(unittest.TestCase):
controls_allowed_prev = False
controls_allowed_prev = False
CS_prev = car . CarState . new_message ( )
CS_prev = car . CarState . new_message ( )
checks = defaultdict ( int )
checks = defaultdict ( int )
selfdrived = SelfdriveD ( CP = self . CP )
selfdrived . initialized = True
for idx , can in enumerate ( self . can_msgs ) :
for idx , can in enumerate ( self . can_msgs ) :
CS = self . CI . update ( can_capnp_to_list ( ( can . as_builder ( ) . to_bytes ( ) , ) ) ) . as_reader ( )
CS = self . CI . update ( can_capnp_to_list ( ( can . as_builder ( ) . to_bytes ( ) , ) ) ) . as_reader ( )
for msg in filter ( lambda m : m . src in range ( 64 ) , can . can ) :
for msg in filter ( lambda m : m . src in range ( 64 ) , can . can ) :
@ -429,11 +426,8 @@ class TestCarModelBase(unittest.TestCase):
if not self . CP . notCar :
if not self . CP . notCar :
checks [ ' cruiseState ' ] + = CS . cruiseState . enabled != self . safety . get_cruise_engaged_prev ( )
checks [ ' cruiseState ' ] + = CS . cruiseState . enabled != self . safety . get_cruise_engaged_prev ( )
else :
else :
# Check for enable events on rising edge of controls allowed
# Check for user button enable on rising edge of controls allowed
selfdrived . update_events ( CS )
button_enable = CS . buttonEnable and ( not CS . brakePressed or CS . standstill )
selfdrived . CS_prev = CS
button_enable = ( selfdrived . events . contains ( ET . ENABLE ) and
EventName . pedalPressed not in selfdrived . events . names )
mismatch = button_enable != ( self . safety . get_controls_allowed ( ) and not controls_allowed_prev )
mismatch = button_enable != ( self . safety . get_controls_allowed ( ) and not controls_allowed_prev )
checks [ ' controlsAllowed ' ] + = mismatch
checks [ ' controlsAllowed ' ] + = mismatch
controls_allowed_prev = self . safety . get_controls_allowed ( )
controls_allowed_prev = self . safety . get_controls_allowed ( )