Пример #1
0
 def test_should_raise_error_when_end_primary_vehicle_permit_with_active_secondary_vehicle_permit(
     self, ):
     primary_start_time = timezone.make_aware(datetime(2021, 11, 15))
     primary_end_time = get_end_time(primary_start_time, 6)
     primary_vehicle_permit = ParkingPermitFactory(
         customer=self.customer,
         primary_vehicle=True,
         contract_type=ContractType.FIXED_PERIOD,
         status=ParkingPermitStatus.VALID,
         start_time=primary_start_time,
         end_time=primary_end_time,
         month_count=6,
     )
     secondary_start_time = timezone.make_aware(datetime(
         CURRENT_YEAR, 1, 1))
     secondary_end_time = get_end_time(secondary_start_time, 2)
     ParkingPermitFactory(
         customer=self.customer,
         contract_type=ContractType.FIXED_PERIOD,
         status=ParkingPermitStatus.VALID,
         start_time=secondary_start_time,
         end_time=secondary_end_time,
         month_count=2,
     )
     with self.assertRaises(PermitCanNotBeEnded):
         primary_vehicle_permit.end_permit(
             ParkingPermitEndType.AFTER_CURRENT_PERIOD)
Пример #2
0
 def test_should_set_end_time_to_now_if_end_permit_immediately(self):
     start_time = timezone.make_aware(datetime(2021, 11, 15))
     end_time = get_end_time(start_time, 6)
     permit = ParkingPermitFactory(
         contract_type=ContractType.FIXED_PERIOD,
         start_time=start_time,
         end_time=end_time,
         month_count=6,
     )
     permit.end_permit(ParkingPermitEndType.IMMEDIATELY)
     self.assertEqual(
         permit.end_time,
         timezone.make_aware(datetime(2021, 11, 20, 12, 10, 50)))
Пример #3
0
 def test_should_set_end_time_to_period_end_if_end_permit_after_current_period(
         self):
     start_time = timezone.make_aware(datetime(2021, 11, 15))
     end_time = get_end_time(start_time, 6)
     permit = ParkingPermitFactory(
         contract_type=ContractType.FIXED_PERIOD,
         start_time=start_time,
         end_time=end_time,
         month_count=6,
     )
     permit.end_permit(ParkingPermitEndType.AFTER_CURRENT_PERIOD)
     self.assertEqual(
         permit.end_time,
         timezone.make_aware(datetime(2021, 12, 14, 23, 59, 59, 999999)),
     )