aboutsummaryrefslogtreecommitdiffstats
path: root/tests/helpers.py (unfollow)
Commit message (Collapse)AuthorLines
2020-07-18Remove AntiMalWare constants, use cache data.Gravatar Leon Sandøy-55/+30
Also updates the tests for this cog.
2020-07-18Remove Filtering constants, use cache data.Gravatar Leon Sandøy-135/+32
Instead of fetching the guild invite IDs from config-default.yml, we will now be using the AllowDenyList cache to check these.
2020-07-18Add more logging to AllowDenyLists cog.Gravatar Leon Sandøy-2/+11
2020-07-18Add AllowDenyLists cog.Gravatar Leon Sandøy-0/+145
This includes commands to add, remove and show the items in the whitelists and blacklists for the different list types. Commands are limited to Moderators+.
2020-07-18Make the cache more convenient to access.Gravatar Leon Sandøy-1/+13
Instead of just dumping the JSON response from the site, we'll build a data structure that it will be convenient to access from our new cog, and from the Filtering cog.
2020-07-18Bulletlist with valid file types in converter.Gravatar Leon Sandøy-2/+2
2020-07-18Better BadArgument exception text.Gravatar Leon Sandøy-2/+3
2020-07-17Kaizen: Make error_handler.py more embeddy.Gravatar Leon Sandøy-7/+25
Currently, some types of errors are returning plain strings that repeat the input (which can be exploited to deliver stuff like mentions), and others are returning generic messages that don't give any exception information. This commit unifies our approach around putting as much information as we can (including the exception message), but always putting it inside an embed, so that stuff like pings will not fire. This, combined with the 1.4.0a `allowed_mentions` functionality, seems like a reasonable compromise between security and usability.
2020-07-17Add ValidAllowDenyListType converter.Gravatar Leon Sandøy-1/+27
We'll use this to ensure the input is valid when people try to whitelist or blacklist stuff. It will fetch its data from an Enum maintained on the site, so that the types of lists we support will only need to be maintained in a single place, instead of duplicating that data in the bot and the site.
2020-07-17Cache AllowDenyList data at bot startup.Gravatar Leon Sandøy-0/+7
We shouldn't be making an API call for every single message posted, so what we're gonna do is cache the data in the Bot, and then update the cache whenever we make changes to it via our new AllowDenyList cog. Since this cog will be the only way to make changes to this, this level of lazy caching should be enough to always keep the cache up to date.
2020-07-17Kaizen: Move OffTopicName to converters.py.Gravatar Leon Sandøy-29/+28
2020-07-16Bugfix: Show ID for embed DM relays, too.Gravatar Leon Sandøy-1/+1
2020-07-15Oops, these prints shouldn't be here.Gravatar Leon Sandøy-3/+0
https://github.com/python-discord/bot/issues/1041
2020-07-15How did that except except block get in?Gravatar Leon Sandøy-3/+0
Weird. https://github.com/python-discord/bot/issues/1041
2020-07-15Create a UserMentionOrID converter.Gravatar Leon Sandøy-1/+24
When we're using the !reply command, using a regular UserConverter is somewhat problematic. For example, if I wanted to send the message "lemon loves you", then I'd try to write `!reply lemon loves you` - however, the optional User converter would then try to convert `lemon` into a User, which it would successfully do since there's like 60 lemons on our server. As a result, the message "loves you" would be sent to a user called lemon.. god knows which one. To solve this bit of ambiguity, I introduce a new converter which only converts user mentions or user IDs into User, not strings that may be intended as part of the message you are sending. https://github.com/python-discord/bot/issues/1041
2020-07-15Ves' refactorGravatar Leon Sandøy-15/+16
Co-authored-by: Sebastiaan Zeeff <[email protected]>
2020-07-15Add some stats for DMs sent and received.Gravatar Leon Sandøy-0/+3
https://github.com/python-discord/bot/issues/1041
2020-07-15Add the user ID to the username in dm relays.Gravatar Leon Sandøy-1/+1
Without this, it is difficult to know precisely who the user that is DMing us is, which might be useful to us. https://github.com/python-discord/bot/issues/1041
2020-07-15Restore DM user caching.Gravatar Leon Sandøy-6/+22
This reverts commit 042f472a
2020-07-15Pass processed string to `extractBests`Gravatar kosayoda-2/+2
Fixes a regression where the string to be matched was not processed beforehand.
2020-07-15Document new kwarg in docstringGravatar kosayoda-0/+2
2020-07-14HelpChannels: remove cooldown info from available messageGravatar MarkKoz-3/+0
Users can no longer see available channels if they're on cooldown. They will instead see a special "cooldown" channel which will explain what's going on.
2020-07-14Suppress NotFound when removing help cmd reactionsGravatar MarkKoz-7/+6
The message may be deleted somehow before the wait_for times out. Fixes #1050 Fixes BOT-6X
2020-07-15Remove caching of last_dm_user.Gravatar Leon Sandøy-25/+20
If you're typing up a reply and the bot gets another DM while you're typing, you might accidentally send your reply to the wrong person. This could happen even if you're very attentive, because it might be a matter of milliseconds. The complexity to prevent this isn't worth the convenience of the feature, and it's nice to get rid of the caching as well, so I've decided to just make .reply require a user for every reply. https://github.com/python-discord/bot/issues/1041
2020-07-14Update bot/resources/tags/or-gotcha.mdGravatar ItsCinnabar-1/+1
Co-authored-by: Sebastiaan Zeeff <[email protected]>
2020-07-14Update or-gotcha.mdGravatar ItsCinnabar-1/+0
2020-07-14Update or-gotcha.mdGravatar ItsCinnabar-1/+1
2020-07-14Update or-gotcha.mdGravatar ItsCinnabar-1/+2
Adjust description and include link to docs
2020-07-14Remove redundant kwarg in !kick and !shadow_kickGravatar kosayoda-2/+2
The kwarg `active=False` is already being passed in `apply_kick`, therefore passing it in the parent callers result in a TypeError. Fixes #976 Fixes BOT-5P
2020-07-14Invoke fuzzywuzzy's processor before matchingGravatar kosayoda-1/+8
Trying to match a string with only non-alphanumeric characters results in a warning by fuzzywuzzy. Processing the string before matching lets us avoid the warning, which which uses the root logger and thus isn't supressible.
2020-07-14Achieve feature parity with talentpoolGravatar kosayoda-2/+17
2020-07-14Add command to list nominees by oldest firstGravatar kosayoda-0/+11
2020-07-14Accept argument to order nominees by oldest firstGravatar kosayoda-2/+6
2020-07-14Pass argument as kwarg to preserve functionalityGravatar kosayoda-1/+1
2020-07-14Allow ordering watched users by oldest firstGravatar kosayoda-1/+7
2020-07-14fix misaligned indentationGravatar Slushie-37/+37
2020-07-13Whitelisting some popular communitiesGravatar Leon Sandøy-0/+10
The following communities are whitelisted by this commit: - Django - Programming Discussions - JetBrains Community - Raspberry Pi - Programmers Hangout - SpeakJS - DevCord - Unity - Programmer Humor - Microsoft Community Most of these are partners, or otherwise friendly communities that aren't worth pinging mods over.
2020-07-13Store last DM user in RedisCache.Gravatar Leon Sandøy-12/+22
Also now catches the exception if a user has disabled DMs, and adds a red cross reaction. https://github.com/python-discord/bot/issues/667
2020-07-13edit snekbox tests to work with filteringGravatar Slushie-0/+12
2020-07-13check for the filter_cog in case it is unloadedGravatar Slushie-1/+3
2020-07-13Remove redundant clean_content variable.Gravatar Leon Sandøy-5/+2
https://github.com/python-discord/bot/issues/667
2020-07-13rename the `_filter_eval` function to be a public functionGravatar Slushie-2/+2
2020-07-13Don't run on_message if self.webhook is None.Gravatar Leon Sandøy-1/+1
https://github.com/python-discord/bot/issues/667
2020-07-13Only mods+ may use the commands in this cog.Gravatar Leon Sandøy-0/+6
https://github.com/python-discord/bot/issues/667
2020-07-13Add avatar_url in python_news.pyGravatar Leon Sandøy-0/+2
https://github.com/python-discord/bot/issues/667
2020-07-13Better docstring for DMRelay cog.Gravatar Leon Sandøy-1/+1
https://github.com/python-discord/bot/issues/667
2020-07-12Fix rescheduling of edited infractionsGravatar MarkKoz-1/+1
It was attempting to schedule a dictionary instead of a coroutine. Fixes #1043 Fixes BOT-6Y
2020-07-13Revert "Ping @Moderators in ModLog"Gravatar Leon Sandøy-15/+20
Let's continue to use "@everyone" for now, and add an explicit allow for it so that it successfully pings people. There's a full justification for this in the pull request. https://github.com/python-discord/bot/issues/1038
2020-07-12Add a way to respond to DMs.Gravatar Leon Sandøy-0/+29
This shouldn't be used as a replacement for ModMail, but I think it makes sense to have the feature just in case #dm-log provides an interesting use-case where responding as the bot makes sense. It's a bit of a curiosity, and Ves hates it, but I included it anyway. https://github.com/python-discord/bot/issues/667
2020-07-12Fix DuckPond tests now that send_webhook is gone.Gravatar Leon Sandøy-39/+12
Some of the tests were failing because they were expecting send_webhook to be a method of the DuckPond cog, other tests simply were no longer applicable, and have been removed. https://github.com/python-discord/bot/issues/667