(
self,
expired_at: Optional[datetime],
now: datetime,
**duration: int,
)
| 1317 | raise HTTPException(status_code=400, detail="不支持的策略动作") |
| 1318 | |
| 1319 | def _extended_expiration( |
| 1320 | self, |
| 1321 | expired_at: Optional[datetime], |
| 1322 | now: datetime, |
| 1323 | **duration: int, |
| 1324 | ) -> datetime: |
| 1325 | base_time = now |
| 1326 | if expired_at is not None: |
| 1327 | comparable_expired_at = self._align_datetime(expired_at, now) |
| 1328 | if comparable_expired_at > now: |
| 1329 | base_time = comparable_expired_at |
| 1330 | return base_time + timedelta(**duration) |
| 1331 | |
| 1332 | def _align_datetime(self, value: datetime, reference: datetime) -> datetime: |
| 1333 | if value.tzinfo is None and reference.tzinfo is not None: |
no test coverage detected