| Commit message (Collapse) | Author | Age | Lines |
| |
|
|
|
|
|
| |
Requested during review.
Co-authored-by: ks129 <[email protected]>
Co-authored-by: Joseph Banks <[email protected]>
|
| |
|
|
|
|
| |
Suggested by Mark during review.
Co-authored-by: MarkKoz <[email protected]>
|
| |
|
|
|
|
|
|
| |
Pointed out by Mark during review that this is unnecessary, as logging
using `exception` automatically appends the `exc_info` of the handled
exception when done in an except block.
Co-authored-by: MarkKoz <[email protected]>
|
| |
|
|
|
|
|
| |
This is way too spacious for how little is happening here.
Suggested by ks129.
Co-authored-by: ks129 <[email protected]>
|
| |
|
|
|
|
| |
Caught during review by ks129.
Co-authored-by: ks129 <[email protected]>
|
| |
|
|
|
|
|
|
|
| |
This was originally in place to silence a PyCharm warning regarding
accessing the private attributes.
However, since there is no corresponding error code to specify,
the noqa will silence any linter warning, which is potentially
dangerous, and seems to be bad practice.
|
| |
|
|
|
| |
Logs useful when observing the internals but too verbose for DEBUG are
reduced to TRACE.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
See the docstring. This does not make the ambition to be powerful
enough to be included in `tests.helpers`, and is only intended
for local purposes.
|
| |\ |
|
| | |\
| | |
| | | |
#364 offensive msg autodeletion
|
| | | | |
|
| | | |\
| | |/
| |/| |
|
| | |\ \
| | | |
| | | | |
Create cooldown.md
|
| | | | |
| | | |
| | | | |
Co-authored-by: Mark <[email protected]>
|
| | | |\ \ |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | | |
Co-authored-by: Mark <[email protected]>
|
| | | | | |
| | | | |
| | | | | |
Co-authored-by: Joseph Banks <[email protected]>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Apply suggestions from code review
Co-authored-by: Joseph Banks <[email protected]>
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | |\ \ \ \
| | | | | |
| | | | | | |
Check infraction reason isn't None before shortening it
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The reason None check should be nested to avoid affecting the else/elif
statements that follow.
|
| | | | | | | |
|
| | | | | | | |
|
| | |\ \ \ \ \
| | | | | | |
| | | | | | | |
Add persistence to the help channel system
|
| | | |\ \ \ \ \
| | |/ / / / /
| |/| | | | | |
|
| | | |/ / / /
| |/| | | | |
|
| | | | | | | |
|
| | |\ \ \ \ \
| | | | | | |
| | | | | | | |
Make token detection more robust and completely rewrite its tests
|
| | | |\ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
bug/filters/928/non-ascii-token
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
It's redundant; there's no benefit here in abstracting two lines of code
into a function.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
This covers the case when a token is matched, but its user ID and
timestamp turn out to be invalid.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
It now supports the changes that switched to finditer, added match
groups, and added the Token NamedTuple. It also accounts for the
is_maybe_token function being removed.
For the sake of simplicity, call assertions on is_valid_user_id and
is_valid_timestamp were not made.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The function was removed due to redundancy. Therefore, its tests are
obsolete.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The tests for valid inputs and invalid inputs were split to make them
more readable.
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
`find_token_in_message` now uses the latter so the tests should adjust
accordingly.
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
It has to account for the addition of groups. It's easiest to compare
the entire string so `finditer` is used to return re.Match objects;
the tuples of `findall` would be cumbersome. Also threw in a change
to use `assertCountEqual` cause the order doesn't really matter.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
It was broken due to the addition of groups. Rather than returning the
full match, `findall` returns groups if any exist. The test was
comparing a tuple of groups to the token string, which was of course
failing. Now `fullmatch` is used cause it's simpler - just check for
`None` and don't worry about iterating matches to search.
|