Skip to content

Check: has_power_level #105

Description

@PenguinBoi12

Users have to implement manually a check to verify if a user performing a command has the required power level. Since it's a common pattern, we should implement a check for that in checks.py.

Proposed API

def has_power_level(level: int) -> Callable:
    async def _has_power_level(ctx: Context) -> bool:
        ...

    def wrapper(cmd: Command) -> Command:
        cmd.check(_has_power_level)

Example

from matrix.checks import is_admin

@has_power_level(100)
@bot.command()
async def kick(ctx, user: str) -> None:

Before opening a PR

  • Write unit tests
  • Run mypy
  • Run pytest tests/
  • Run black .

Metadata

Metadata

Assignees

No one assigned

    Labels

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions