class IndicatorCombinator(): IDENTIFIER = 'indicator' MAX_SEASON = 2 MAX_EPISODE = 3 def __init__(self, context = None): self._context = context self._logger = context['logger'] self._reportLogger = context['report_logger'] def getIdentifier(self): return IndicatorCombinator.IDENTIFIER def getPayload(self, season: int = -1, episode: int = -1): if season == -1 and episode == -1: return { 'variant': 'S00E00', 'indicator': '', 'season': season, 'episode': episode } else: return { 'variant': f"S{season:02d}E{episode:02d}", 'indicator': f"S{season:02d}E{episode:02d}", 'season': season, 'episode': episode } def assertFunc(self, testObj = {}): pass def shouldFail(self): return False def getYield(self): yield self.getPayload() for season in range(IndicatorCombinator.MAX_SEASON): for episode in range(IndicatorCombinator.MAX_EPISODE): yield self.getPayload(season+1, episode+1)