Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unit test discord_handler.py #44

Merged
merged 1 commit into from
Feb 20, 2024
Merged

Commits on Feb 20, 2024

  1. Unit test discord_handler.py

    When deploying `filmbot` to AWS, the majority of issues are small Python
    mistakes inside `discord_handler.py`.  Although there isn't a terrible
    amount of logic inside this file, there's still a decent amount of code
    that could go wrong.
    
    This commit adds a reasonable attempt at testing most inputs to
    `handle_discord` (perhaps with the exception of the film autocomplete as
    it relys on IMDbPy to send a network request).
    
    Throughout testing I have found 2 potential causes for non-determinism,
    which won't actually cause any issues in the real world, but makes unit
    testing difficult.  One was unnecessarily converting an iterable into a
    `set` and then iterating through it to display a message, and the second
    was a situation that arises in the test where we may or may not have the
    two nominated films share an identical timestamp depending on how fast
    the code runs.  In the case of a tie `moto` returns the results in a
    different order from the query than if they were different.  To fix this
    we make sure to sort entries by Discord User ID if the nomination
    timestamps are the same.
    elliotgoodrich committed Feb 20, 2024
    Configuration menu
    Copy the full SHA
    f4d48fb View commit details
    Browse the repository at this point in the history