aboutsummaryrefslogtreecommitdiffstats
path: root/tests/helpers.py (unfollow)
Commit message (Collapse)AuthorLines
2019-10-07Turn the jump URL into a clickable linkGravatar Matteo Bertucci-1/+1
2019-10-07Fix my broken EnglishGravatar Matteo Bertucci-1/+1
Co-Authored-By: Sebastiaan Zeeff <[email protected]>
2019-10-06Add line break between the reminder and the jump urlGravatar Akarys42-1/+1
2019-10-04Adjust verbiage of totals for watch commandsGravatar MarkKoz-2/+2
2019-10-04Show previous watch reason and total after invoking watch commandGravatar MarkKoz-2/+39
2019-10-03Improve readabilityGravatar Ben Diller-0/+1
Co-Authored-By: Mark <[email protected]>
2019-10-03Move asyncio.sleep() to avoid disturbing function signatures.Gravatar bendiller-16/+13
2019-10-03Check if tzinfo is None in ISODateTime testGravatar Sebastiaan Zeeff-1/+3
As we have decided that the converter should return naive datetime objects, we should explicitly test that datetime strings with a timezone offset are still converted to a naive datetime object. I have done this by adding a `tzinfo is None` assertion.
2019-10-02Add sleep(3) between retries, with bot indicating typing during sleepGravatar bendiller-4/+9
2019-10-02Add logging for invalid response (after all retries are exhausted)Gravatar bendiller-1/+3
2019-10-03Fix mutes not being re-applied on rejoins.Gravatar scragly-5/+42
2019-10-02Fix linting errorGravatar Matteo Bertucci-4/+5
Fix some liting error Correct error Fix linting (maybe)
2019-10-02Make ISODateTime return tz-unaware datetimeGravatar Sebastiaan Zeeff-1/+33
The parser we use, `dateutil.parsers.isoparse` returns a timezone- aware or timezone-unaware `datetime` object depending on whether or not the datetime string included a timezone offset specification. Since we can't compare tz-aware objects to tz-unaware objects it's better to make sure our converter is consistent in the type it will return. For now, I've chosen to return tz-unaware datetime objects, since `discord.py` also returns tz-unaware datetime objects when accessing datetime-related attributes of objects. Since we're likely to compare "our" datetime objects to discord.py-provided datetime objects, I think that's the most parsimonious option for now. Note: It's probably a good idea to open a larger discussion about using timezone-aware datetime objects throughout the library to avoid a UTC-time being interpreted as localtime. This will require a broader discussion than this commit/PR allows, though.
2019-10-02Remove angle brackets from ISODateTime docstringGravatar Sebastiaan Zeeff-1/+1
This commit removes the angle brackets from the url in the docstring of `ISODateTime.convert`. The reason: it's ugly.
2019-10-02Apply docstring review suggestionGravatar Sebastiaan Zeeff-1/+1
Co-Authored-By: Mark <[email protected]>
2019-10-02Fix `cog_unload` bug in WatchChannel ABCGravatar Sebastiaan Zeeff-1/+1
https://github.com/python-discord/bot/issues/482 There was small bug in the `cog_unload` method of the WatchChannel ABC in `bot.cogs.watchchannels.watchchannel`. The problem was that it tries to check if the Task assigned to `self._consume_task` is done by accessing its `done` method. However, if a watch channel has not yet relayed messages after the bot has started, it will not have a consumption task yet, meaning this `_consume_task` attribute will be assigned to `None`. The solution is to change the `if` condition to: `if self._consume_task and not self._consume_task.done():` This commit closes #482
2019-10-01Fix missing type annotations and docstring errors.Gravatar Leon Sandøy-7/+3
2019-10-01Create !tools alias and split !site resources.Gravatar Leon Sandøy-7/+28
This splits the former !site resources into two separate commands, one for !site resources and one for !site tools. This makes sense now that we've split up the lists into two pages. It also adds a new alias, !tools, to call this command. This addresses #478. https://github.com/python-discord/bot/issues/478
2019-10-01Add checks for valid response and retries to fetch_posts()Gravatar bendiller-9/+13
2019-10-01Make tests work with Union converterGravatar Joseph Banks-3/+4
2019-10-01Update docs cog docstring & fix URL converter attribute errorGravatar S. Co1-4/+4
2019-10-01Update bot/cogs/doc.pyGravatar Ayplo-1/+1
Co-Authored-By: S. Co1 <[email protected]>
2019-10-01linter is the bane of my existenceGravatar Joseph Banks-1/+0
2019-10-01Implement review comments and stop using a greedy converterGravatar Joseph Banks-4/+22
2019-10-01Remove surplus quotation mark in class docstringGravatar Sebastiaan Zeeff-1/+1
Co-Authored-By: S. Co1 <[email protected]>
2019-10-01Remove single-item listGravatar S. Co1-2/+1
It looks silly
2019-10-01Make `!tags edit` use PATCH to update tagsGravatar Sebastiaan Zeeff-2/+31
https://github.com/python-discord/bot/issues/474 This commit makes sure we're using the PATCH method to update tags, instead of the POST method. The problem was that the `!tags edit` command was an alias of `!tags set`, which uses the POST method to post new tags to the API. However, when a tag with a given name already exists, the API will refuse a POST request in an attempt to update it; we need to use the PATCH method to the `bot/tags/{tag_name}` endpoint instead. I fixed this by creating a separate subcommand, `!tags edit`, that uses the correct PATCH method to update an existing tag. This commit closes #474
2019-10-01Add converter for ISO-formatted datetime stringsGravatar Sebastiaan Zeeff-0/+88
Related to https://github.com/python-discord/bot/issues/458 This commit adds a converter that automatically parses ISO-formatted datetime strings and returns a `datetime.datetime` object. It uses `dateutil.parser.isoparse` to do the heavy lifting, so it supports the same formats as this method. In addition, I have added tests that ensure that it accepts certain formats and added a description of these 'guaranteed' formats to the `ISODate.convert` docstring. This commit should make it easy to implement #485
2019-09-30Update contrib doc for new wiki linksGravatar sco1-3/+4
2019-09-30Forward arguments to getGravatar Tom Sputz-1/+1
2019-09-30Add jump urlGravatar Matteo Bertucci-3/+6
2019-09-30Remove temp instructions, add link to contrib guide on website.Gravatar scragly-27/+1
2019-09-30Make `bot` wait for `web`, use `latest` web image.Gravatar scragly-2/+3
2019-09-29Add humanized delta and content to confirmation messageGravatar Akarys42-1/+4
2019-09-29Do up some basic setup instructions for new setup.Gravatar scragly-0/+28
2019-09-28Update site to use new manage.py, add bot dev compose.Gravatar scragly-7/+20
2019-09-28Use pathlib, avoid inner `bot` directory for logs.Gravatar scragly-7/+6
2019-09-27Apply suggestions from code reviewGravatar S. Co1-2/+2
Co-Authored-By: Mark <[email protected]>
2019-09-28Lovely lemon let loose and forgot linting.Gravatar scragly-1/+1
2019-09-27Allow Rockstars and Partners to use !eval.Gravatar Leon Sandøy-7/+10
Anyone who is not a Rockstar, a Partner, or a member of staff will still be redirected to #bot-commands.
2019-09-27Ensure docker containers are published only for master branch builds.Gravatar scragly-1/+1
2019-09-26Remove invalid colorama markersGravatar S. Co1-2/+0
2019-09-26Update flake8-annotations & fix missing lintsGravatar S. Co1-10/+47
2019-09-26Use Command.cog_name attr instead of missing instance attrGravatar S. Co1-2/+2
2019-09-26Fix incorrect kwargs in watchchannel modlog sendGravatar S. Co1-2/+2
2019-09-26Parse timestamps with dateutil for watch channelsGravatar MarkKoz-5/+2
2019-09-26Use format_infaction datetime util in talentpoolGravatar Sebastiaan Zeeff-11/+5
The watchchannel ABC defined its own private utility function to format ISO datetime strings to something more human-readable. I have removed this private utility function and replaced the calls to it with calls to the new `format_infraction` utility function defined in bot.utils.time. In addition, I've changed the utility function to use `dateutil` to parse the datetime string, since `dateutil.parser.isoparse` supports the strings our API generates out of the box. With the built-in `datetime.datetime.fromisoformat`, we needed to prepare the string by slicing of the `Z` timezone indicator.
2019-09-26Add utility function to consistently format infraction timestampsGravatar MarkKoz-33/+18
The format used is %Y-%m-%d %H:%M.
2019-09-26Show when field is unchanged in infraction edit confirmation messageGravatar MarkKoz-0/+4
2019-09-25Display "Permanent" in mod log for edited infractionsGravatar MarkKoz-2/+2