示例#1
0
 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, {})
示例#2
0
 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)
示例#3
0
 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
             }
         })
示例#4
0
 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()
示例#5
0
 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)