Ejemplo n.º 1
0
def guarantee_at_most_one_or_retire(decks: List[Deck]) -> Optional[Deck]:
    try:
        run = guarantee.at_most_one(decks)
    except TooManyItemsException:
        league.retire_deck(decks[0])
        run = decks[1]
    return run
Ejemplo n.º 2
0
def maybe_load_person_by_mtggoldfish_name(username: str) -> Optional[Person]:
    return guarantee.at_most_one(
        load_people('p.mtggoldfish_username = {username}'.format(
            username=sqlescape(username))))
Ejemplo n.º 3
0
def maybe_load_person_by_discord_id(
        discord_id: Optional[int]) -> Optional[Person]:
    if discord_id is None:
        return None
    return guarantee.at_most_one(load_people(f'p.discord_id = {discord_id}'))
Ejemplo n.º 4
0
def load_person_by_tappedout_name(username: str) -> Optional[Person]:
    return guarantee.at_most_one(
        load_people('p.tappedout_username = {username}'.format(
            username=sqlescape(username))))
Ejemplo n.º 5
0
def load_person_by_discord_id(discord_id: Optional[int]) -> Optional[Person]:
    if discord_id is None:
        return None
    return guarantee.at_most_one(
        load_people('p.discord_id = {discord_id}'.format(
            discord_id=sqlescape(discord_id))))