diff --git a/karma.py b/karma.py index 86bffeed0ffe53b07b2b4f650e1e4aac07e40873..75842ebea5bc61364af6d62b3731b287cc8bb584 100644 --- a/karma.py +++ b/karma.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2016-2021 Bruce Cowan <bruce@bcowan.me.uk> +# SPDX-FileCopyrightText: 2016-2022 Bruce Cowan <bruce@bcowan.me.uk> # # SPDX-License-Identifier: GPL-3.0-or-later @@ -30,7 +30,7 @@ class Karma(errbot.BotPlugin): return f"Karma for '{target}' is now {self['karma'][target]}" - @errbot.re_botcmd(pattern=r"(.+)\+\+", prefixed=False, flags=re.IGNORECASE) + @errbot.re_botcmd(pattern=r"(.+)\+\+$", prefixed=False, flags=re.IGNORECASE) def on_karma_inc(self, message: errbot.Message, match: re.Match) -> str | None: """Adds karma""" if message.frm == self.bot_identifier: @@ -40,7 +40,7 @@ class Karma(errbot.BotPlugin): return self._change_karma(match.group(1), 1) - @errbot.re_botcmd(pattern=r"(.+)--", prefixed=False, flags=re.IGNORECASE) + @errbot.re_botcmd(pattern=r"(.+)--$", prefixed=False, flags=re.IGNORECASE) def on_karma_dec(self, message: errbot.Message, match: re.Match) -> str | None: """Removes karma""" if message.frm == self.bot_identifier: diff --git a/test_karma.py b/test_karma.py index 3fdca904da993cb62969768f9c78f1d2b39b8f12..0f4afe27e5015d5d4901b8c7e9ab65141332e355 100644 --- a/test_karma.py +++ b/test_karma.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2018-2021 Bruce Cowan <bruce@bcowan.me.uk> +# SPDX-FileCopyrightText: 2018-2022 Bruce Cowan <bruce@bcowan.me.uk> # # SPDX-License-Identifier: GPL-3.0-or-later @@ -40,3 +40,13 @@ def test_cpp(testbot): testbot.push_message("C++ is not horrible") with pytest.raises(queue.Empty): testbot.pop_message(1) + + +def test_noend(testbot): + testbot.push_message("Testing++ not at the end of line") + with pytest.raises(queue.Empty): + testbot.pop_message(1) + + testbot.push_message("Testing-- not at the end of the line") + with pytest.raises(queue.Empty): + testbot.pop_message(1)