def test_process_no_lap_list(self): session = Session(session_uid="vettel2021") session.lap_number_current = 1 packet = get_packet_mock() packet.carStatusData = [MagicMock(visualTyreCompound=7)] session = CarStatusPacket().process(packet, session) self.assertEqual(session.lap_list, {})
def test_lap_new_without_old(self): session = Session(session_uid="vettel2021") session.lap_number_current = 1 packet = get_packet_mock() packet.lapData = [ MagicMock(currentLapNum=2, currentLapTime=80, sector1TimeInMS=10002, sector2TimeInMS=20002, pitStatus=2, carPosition=4, lastLapTime=60.006) ] session = LapPacket().process(packet, session) self.assertEqual( session.lap_list, { 2: { 'sector_1_time_ms': 10002, 'sector_2_time_ms': 20002, 'sector_3_time_ms': 49996, 'lap_number': 2, 'car_race_position': 4, 'pit_status': 2, 'is_valid': True } }) self.assertEqual(session.lap_number_current, 2)
def test_lap_current(self): session = Session(session_uid="vettel2021") session.lap_number_current = 2 session.lap_list = { 2: { "sector_1_time_ms": 10002, "sector_2_time_ms": 20002, "sector_3_time_ms": 30002, "lap_number": 2, "car_race_position": 1, "pit_status": 1 } } packet = get_packet_mock() packet.lapData = [ MagicMock(currentLapNum=2, currentLapTime=80, sector1TimeInMS=10002, sector2TimeInMS=20002, pitStatus=2, carPosition=4, currentLapInvalid=0) ] session = LapPacket().process(packet, session) self.assertEqual( session.lap_list, { 2: { 'sector_1_time_ms': 10002, 'sector_2_time_ms': 20002, 'sector_3_time_ms': 49996, 'lap_number': 2, 'car_race_position': 4, 'pit_status': 2, 'is_valid': True } }) self.assertEqual(session.lap_number_current, 2) # invalid lap packet.lapData = [ MagicMock(currentLapNum=2, currentLapTime=80, sector1TimeInMS=10002, sector2TimeInMS=20002, pitStatus=2, carPosition=4, currentLapInvalid=1) ] session = LapPacket().process(packet, session) self.assertEqual( session.lap_list, { 2: { 'sector_1_time_ms': 10002, 'sector_2_time_ms': 20002, 'sector_3_time_ms': 49996, 'lap_number': 2, 'car_race_position': 4, 'pit_status': 2, 'is_valid': False } })
def test_lap_new_with_old_without_sector_2(self): session = Session(session_uid="vettel2021") session.lap_number_current = 1 session.lap_list = { 1: { "sector_1_time_ms": 0, "sector_2_time_ms": 0, "sector_3_time_ms": 30002, "lap_number": 1, "car_race_position": 1, "pit_status": 1, 'is_valid': True } } session.process_lap_in_f1laps = MagicMock() packet = get_packet_mock() packet.lapData = [ MagicMock(currentLapNum=2, currentLapTime=80, sector1TimeInMS=10002, sector2TimeInMS=20002, pitStatus=2, carPosition=4, lastLapTime=30.002) ] session = LapPacket().process(packet, session) self.assertEqual( session.lap_list, { 1: { "sector_1_time_ms": 0, "sector_2_time_ms": 0, "sector_3_time_ms": 30002, "lap_number": 1, "car_race_position": 1, "pit_status": 1, 'is_valid': True }, 2: { 'sector_1_time_ms': 10002, 'sector_2_time_ms': 20002, 'sector_3_time_ms': 49996, 'lap_number': 2, 'car_race_position': 4, 'pit_status': 2, 'is_valid': True } }) self.assertEqual(session.lap_number_current, 2) session.process_lap_in_f1laps.assert_not_called()
def test_process_no_lap_list_with_current_lap(self): session = Session(session_uid="vettel2021") session.lap_number_current = 1 session.lap_list = { 0: { "sector_1_time_ms": 0, "sector_2_time_ms": 0, "sector_3_time_ms": 30002, "lap_number": 1, "car_race_position": 1, "pit_status": 1, 'is_valid': True } } packet = get_packet_mock() packet.carStatusData = [MagicMock(visualTyreCompound=7)] session = CarStatusPacket().process(packet, session) self.assertEqual(session.lap_list.get(session.lap_number_current), None)