aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Merge branch 'master' into python38-migrationGravatar Sebastiaan Zeeff2020-03-01-29/+71
|\ | | | | | | I have resolved a merge conflict in Pipfile.lock by relocking with the newly added dependencies of `coloredlogs` and `colorama`.
| * Merge pull request #806 from python-discord/feat/frontend/b000/coloured-logsGravatar Eivind Teig2020-03-01-47/+89
| |\ | | | | | | Coloured log output
| | * Make logs coloured!Gravatar MarkKoz2020-02-29-7/+23
| | |
| | * Install the coloredlogs packageGravatar MarkKoz2020-02-29-40/+66
| |/ | | | | | | | | This makes it easy to add colour to the logs. Colorama is also installed if on a Windows system.
* | Migrate snekbox tests to Python 3.8's unittestGravatar Sebastiaan Zeeff2020-02-29-41/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've migrated the `tests/test_snekbox.py` file to use the new Python 3.8-style unittests instead of our old style using our custom Async mocks. In particular, I had to make a few changes: - Mocking the async post() context manager correctly Since `ClientSession.post` returns an async context manager when called, we need to make sure to assign the return value to the __aenter__ method of whatever `post()` returns, not of `post` itself (i.e.. when it's not called). - Use the new AsyncMock assert methods `assert_awaited_once` and `assert_awaited_once_with` Objects of the new `unittest.mock.AsyncMock` class have special methods to assert what they were called with that also assert that specific coroutine object was awaited. This means we test two things in one: Whether or not it was called with the right arguments and whether or not the returned coroutine object was then awaited. - Patch `functools.partial` as `partial` objects are compared by identity When you create two partial functions of the same function, you'll end up with two different `partial` objects. Since `partial` objects are compared by identity, you can't compare a `partial` created in a test method to that created in the callable you're trying to test. They will always compare as `False`. Since we're not interested in actually creating `partial` objects, I've just patched `functools.partial` in the namespace of the module we're testing to make sure we can compare them.
* | Merge branch 'master' into python38-migrationGravatar Sebastiaan Zeeff2020-02-29-403/+1005
|\| | | | | | | I've resolved the merge conflict by confirming the deleted part of tests/helpers.py
| * Merge pull request #755 from ↵Gravatar Sebastiaan Zeeff2020-02-29-44/+70
| |\ | | | | | | | | | | | | python-discord/bug/backend/b754/scheduler-suppresses-errors Don't suppress all errors in scheduler
| | * Merge branch 'master' into bug/backend/b754/scheduler-suppresses-errorsGravatar Sebastiaan Zeeff2020-02-29-353/+936
| | |\ | | |/ | |/|
| * | Merge pull request #797 from Numerlor/fuzzy_zero_divGravatar Shirayuki Nekomata2020-02-29-26/+17
| |\ \ | | | | | | | | Fix invalid tag names being passed to the tag cog.
| | * \ Merge branch 'master' into fuzzy_zero_divGravatar Shirayuki Nekomata2020-02-29-32/+479
| | |\ \ | | |/ / | |/| |
| * | | Merge pull request #710 from python-discord/eval-enhancementsGravatar Mark2020-02-28-32/+479
| |\ \ \ | | | | | | | | | | Eval cog improvements
| | * | | Snekbox: mention re-evaluation feature in the command's docstringGravatar MarkKoz2020-02-28-1/+4
| | | | |
| | * | | Merge remote-tracking branch 'origin/master' into eval-enhancementsGravatar MarkKoz2020-02-28-1440/+3084
| | |\ \ \ | | |/ / / | |/| | |
| | * | | Ignore NotFound errors inside continue_evalGravatar Matteo2020-02-28-24/+25
| | | | | | | | | | | | | | | | | | | | It could have caused some errors if the user delete his own message
| | * | | Return only the new code in continue_eval and check for truthiness insteadGravatar Matteo2020-02-28-11/+10
| | | | |
| | * | | Use unicode code point instead of literal for the snekbox re-eval emojiGravatar Matteo2020-02-27-6/+8
| | | | | | | | | | | | | | | | | | | | Unicode literals aren't really safe compared to code points
| | * | | Split the eval command procedure into two functions.Gravatar Matteo2020-02-27-114/+148
| | | | | | | | | | | | | | | | | | | | Two functions were created: send_eval and continue_eval, in order to facilitate testing. The corresponding tests are also changed in this commit.
| | * | | Merge branch 'master' into eval-enhancementsGravatar Matteo Bertucci2020-02-18-379/+350
| | |\ \ \
| | * | | | Use kwargs to set mock attributesGravatar Matteo2020-02-18-25/+11
| | | | | |
| | * | | | Assert return value of Snekbox.post_evalGravatar Matteo2020-02-18-1/+3
| | | | | |
| | * | | | Use a space instead of an empty string in test_get_status_emoji Gravatar Matteo Bertucci2020-02-18-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because of the stripping, it should still be considered as empty Co-Authored-By: Mark <[email protected]>
| | * | | | Delete additional informations from subtest Gravatar Matteo Bertucci2020-02-18-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reduce visual clutter Co-Authored-By: Mark <[email protected]>
| | * | | | Split assertions onto separate lines Gravatar Matteo Bertucci2020-02-18-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reads better as separate lines Co-Authored-By: Mark <[email protected]>
| | * | | | Split assertion onto separate linesGravatar Matteo Bertucci2020-02-18-1/+2
| | | | | | | | | | | | | | | | | | Co-Authored-By: Mark <[email protected]>
| | * | | | Snekbox small refactoringGravatar Matteo2020-02-18-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes the code a bit clearer Co-authored-by: Shirayuki Nekomata <[email protected]>
| | * | | | Suppress HTTPException while deleting bot outputGravatar Matteo2020-02-18-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | It was triggering an error if the user deleted the output before re-evaluating
| | * | | | Use pregenerated partialsGravatar Matteo2020-02-18-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | This avoid recreating partials for each re-eval
| | * | | | Write tests for bot/cogs/test_snekbox.pyGravatar Akarys422020-02-09-0/+363
| | | | | |
| | * | | | Create an AsyncContextManagerMock mock for testing asynchronous context managersGravatar Akarys422020-02-09-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | It can be used to test aiohttp request functions, since they are async context managers
| | * | | | Use actual functions instead of lambdas for bot.wait_forGravatar Akarys422020-02-09-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | The use of lambdas made the functions hard to test, this new format allows us to easily test those functions and document them.
| | * | | | Merge branch 'master' into eval-enhancementsGravatar Matteo Bertucci2020-01-30-350/+648
| | |\ \ \ \
| | * | | | | Re-eval snippet with emoji reactionGravatar Matteo Bertucci2020-01-29-23/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the eval message is edited after less than 10 seconds, an emoji is added to the message, and if the user adds the same, the snippet is re-evaluated. This make easier to correct snipper mistakes.
| | * | | | | Don't strip whitespaces during snekbox formattingGravatar Matteo Bertucci2020-01-28-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It could lead to a misleading result if it is stripped.
| | * | | | | Correct eval output to include the 11th lineGravatar Akarys422019-12-26-1/+1
| | | | | | |
| | * | | | | Hardcode SIGKILL valueGravatar Akarys422019-12-25-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It allows the cog to also work on Windows, because of Signals.SIGKILL not being defined on this platform
| | | | | * | Merge branch 'master' into fuzzy_zero_divGravatar Numerlor2020-02-28-273/+386
| | | | | |\ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | # Conflicts: # bot/cogs/error_handler.py
| * | | | | | Merge pull request #757 from python-discord/feat/backend/b131/error-handlingGravatar Leon Sandøy2020-02-28-102/+149
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Handle more types of CommandError
| | * \ \ \ \ \ Merge branch 'master' into feat/backend/b131/error-handlingGravatar Leon Sandøy2020-02-28-196/+294
| | |\ \ \ \ \ \ | | |/ / / / / / | |/| | | | | |
| * | | | | | | Merge pull request #782 from python-discord/feat/backend/b496/rename-constantsGravatar Leon Sandøy2020-02-28-163/+229
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Rename constants to match their guild counterparts
| | * \ \ \ \ \ \ Merge branch 'master' into feat/backend/b496/rename-constantsGravatar Leon Sandøy2020-02-28-33/+65
| | |\ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | | |
| | * | | | | | | Fix mismatched constant names in syncer testsGravatar S. Co12020-02-25-6/+6
| | | | | | | | |
| | * | | | | | | Configure staff role & channel groupings in YAMLGravatar S. Co12020-02-25-10/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | Delete duplicate keys that were missed in the merge
| | * | | | | | | Merge branch 'master' into feat/backend/b496/rename-constantsGravatar S. Co12020-02-25-546/+1676
| | |\ \ \ \ \ \ \
| | * | | | | | | | Tests: fix setting bot-commands ID in information testsGravatar MarkKoz2020-02-23-4/+4
| | | | | | | | | |
| | * | | | | | | | Constants: rename Guild.Constant.ignored to modlog_blacklistGravatar MarkKoz2020-02-23-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This name better explains what the list is for.
| | * | | | | | | | Config: replace abbreviated lists with normal onesGravatar MarkKoz2020-02-23-4/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lists were getting too long to be readable as one line. Having each element on a separate line also reduces merge conflicts.
| | * | | | | | | | Config: add underscore to devcontribGravatar MarkKoz2020-02-23-2/+2
| | | | | | | | | |
| | * | | | | | | | Config: fix DEV_LOG variable thingyGravatar MarkKoz2020-02-23-2/+2
| | | | | | | | | |
| | * | | | | | | | Always load doc and verification extensionsGravatar MarkKoz2020-02-23-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They used to only be loaded in "debug mode" because the main guild was used to test the bot. However, we have since moved to using a separate test guild so it's no longer a concern if these cogs get loaded. It was confusing to some contributors as to why these cogs were not being loaded since the debug mode isn't really documented anywhere.
| | * | | | | | | | Config: rename channels to match their names in the guildGravatar MarkKoz2020-02-23-76/+76
| | | | | | | | | |