diff --git a/.coveragerc b/.coveragerc index a661289d25ca0068d43f9a60f26b0e14a96f5440..7e86cef5421ff44189d028608997c0e4810bde6d 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,7 +1,7 @@ # .coveragerc to control coverage.py [run] branch = True -source = coffee_bot +source = mattermost_matchmaker [report] # Regexes for lines to exclude from consideration diff --git a/README.md b/README.md index 279241fc8a91109b5eef8f13a3d77b6c1f12cf82..12d46b5abab2d9326ccd45bc5ef2a247f4b63687 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Mattermost Coffee Bot +# Mattermost Matchmaker The purpose of this small bot is to act as a matchmaker for users that shares channel with the bot. ## Development diff --git a/coffee_bot/__init__.py b/mattermost_matchmaker/__init__.py similarity index 100% rename from coffee_bot/__init__.py rename to mattermost_matchmaker/__init__.py diff --git a/coffee_bot/config.py b/mattermost_matchmaker/config.py similarity index 100% rename from coffee_bot/config.py rename to mattermost_matchmaker/config.py diff --git a/coffee_bot/match_making.py b/mattermost_matchmaker/matchmaking.py similarity index 100% rename from coffee_bot/match_making.py rename to mattermost_matchmaker/matchmaking.py diff --git a/coffee_bot/run.py b/mattermost_matchmaker/run.py similarity index 100% rename from coffee_bot/run.py rename to mattermost_matchmaker/run.py diff --git a/tests/test_lint.py b/tests/test_lint.py index 1d8d6f1379b227fe928fdfddff7adbc7d252433b..6608b2b93000a6ab5632afb133b134a24cabba69 100644 --- a/tests/test_lint.py +++ b/tests/test_lint.py @@ -11,7 +11,7 @@ class CodeQualityCase(TestCase): self.rcfile = self.vcsroot.joinpath('.pylintrc') def test_source_quality(self): - self.assertEqual(0, epylint.lint("coffee_bot", ["--fail-under=9.5", f"--rcfile={self.rcfile}"])) + self.assertEqual(0, epylint.lint("mattermost_matchmaker", ["--fail-under=9.5", f"--rcfile={self.rcfile}"])) def test_test_quality(self): self.assertEqual(0, epylint.lint("tests", ["--fail-under=9.5", f"--rcfile={self.rcfile}"])) diff --git a/tests/test_matchmaking.py b/tests/test_matchmaking.py index 3300d7a6e8f4c9999af61e30a992fc608839e2c4..fd5eec8c1ea21e79e6a4ce66981ea8a0e9f4419b 100644 --- a/tests/test_matchmaking.py +++ b/tests/test_matchmaking.py @@ -4,7 +4,7 @@ import copy import mock import mattermost -from coffee_bot import match_making +from mattermost_matchmaker import matchmaking class MatchMakingCaseBase(unittest.TestCase): @@ -65,7 +65,7 @@ class MatchMakingCase(MatchMakingCaseBase): self.assertIn(self.my_channel_membership, self.members) - members_except_me = match_making.members_in_channel_besides_me( + members_except_me = matchmaking.members_in_channel_besides_me( self.client, "channel-id") self.assertNotIn( @@ -77,20 +77,20 @@ class MatchMakingCase(MatchMakingCaseBase): self.client.create_group_channel_with.return_value = { "id": "group-chat-id"} - group_id = match_making.create_group(self.client, ["user-id-0", "user-id-1"]) + group_id = matchmaking.create_group(self.client, ["user-id-0", "user-id-1"]) self.assertEqual(group_id, "group-chat-id") self.client.create_group_channel_with.assert_called_with( other_user_ids_list=['user-id-0', 'user-id-1'] ) - @mock.patch('coffee_bot.match_making.create_group') - @mock.patch('coffee_bot.match_making.random.shuffle') + @mock.patch('mattermost_matchmaker.matchmaking.create_group') + @mock.patch('mattermost_matchmaker.matchmaking.random.shuffle') def test_making_matches_for_members_even(self, _shuffle, create_group): members = self._generate_n_members(4) create_group.side_effect = lambda c, ids: ";".join(ids) - groups_created, left_out = match_making.make_matches_for_members( + groups_created, left_out = matchmaking.make_matches_for_members( client=self.client, members=members, group_size=2, @@ -99,13 +99,13 @@ class MatchMakingCase(MatchMakingCaseBase): self.assertIsNone(left_out, "No one should be left out in this setup") self.assertListEqual(["user-id-0;user-id-1", "user-id-2;user-id-3"], groups_created) - @mock.patch('coffee_bot.match_making.create_group') - @mock.patch('coffee_bot.match_making.random.shuffle') + @mock.patch('mattermost_matchmaker.matchmaking.create_group') + @mock.patch('mattermost_matchmaker.matchmaking.random.shuffle') def test_making_matches_for_members_odd(self, _shuffle, create_group): members = self._generate_n_members(5) create_group.side_effect = lambda c, ids: ";".join(ids) - groups_created, left_out = match_making.make_matches_for_members( + groups_created, left_out = matchmaking.make_matches_for_members( client=self.client, members=members, group_size=2, @@ -115,12 +115,12 @@ class MatchMakingCase(MatchMakingCaseBase): self.assertListEqual(["user-id-0;user-id-1", "user-id-2;user-id-3"], groups_created) -@mock.patch('coffee_bot.match_making.make_matches_for_members') -@mock.patch('coffee_bot.match_making.members_in_channel_besides_me') +@mock.patch('mattermost_matchmaker.matchmaking.make_matches_for_members') +@mock.patch('mattermost_matchmaker.matchmaking.members_in_channel_besides_me') class MatchingInChannelCase(MatchMakingCaseBase): def test_minimum_members_with_message(self, members_besides_me, make_matches_for_members): members_besides_me.return_value = self._generate_n_members(2) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", too_few_message="Too few", @@ -132,7 +132,7 @@ class MatchingInChannelCase(MatchMakingCaseBase): def test_minimum_members_without_message(self, members_besides_me, make_matches_for_members): members_besides_me.return_value = self._generate_n_members(2) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", too_few_message=None, @@ -146,7 +146,7 @@ class MatchingInChannelCase(MatchMakingCaseBase): make_matches_for_members.return_value = (["group-id-1", "group-id-2"], None) members_besides_me.return_value = self._generate_n_members(2) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", group_hail="Hail Group!", @@ -162,7 +162,7 @@ class MatchingInChannelCase(MatchMakingCaseBase): make_matches_for_members.return_value = (["group-id-1", "group-id-2"], None) members_besides_me.return_value = self._generate_n_members(2) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", group_hail=None, @@ -177,7 +177,7 @@ class MatchingInChannelCase(MatchMakingCaseBase): "first_name": "Firstname", "last_name": "LASTNAME"} members_besides_me.return_value = self._generate_n_members(1) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", left_out_message="Couldn't match {user[first_name]} {user[last_name]} this time", @@ -193,7 +193,7 @@ class MatchingInChannelCase(MatchMakingCaseBase): make_matches_for_members.return_value = ([], "user-id-0") members_besides_me.return_value = self._generate_n_members(2) - match_making.matching_in_channel( + matchmaking.matching_in_channel( self.client, channel_id="channel-id", left_out_message=None, diff --git a/tests/test_random_tuple.py b/tests/test_random_tuple.py index aa61a35e86f0b3d2e1dd1b2e2e804d28ff77f98b..99ec4f1920564d26c10ea2de61ebdfcfd14d210e 100644 --- a/tests/test_random_tuple.py +++ b/tests/test_random_tuple.py @@ -1,6 +1,6 @@ # pylint: disable=missing-class-docstring, missing-function-docstring import unittest -from coffee_bot import match_making +from mattermost_matchmaker import matchmaking class RandomNonrepeatingTuplesCase(unittest.TestCase): @@ -8,7 +8,7 @@ class RandomNonrepeatingTuplesCase(unittest.TestCase): population = ["alma", "korte", "cseresznye", "meggy"] # pylint: disable=unnecessary-comprehension - random_pairs = [p for p in match_making.random_nonrepeating_tuples(population, 2)] + random_pairs = [p for p in matchmaking.random_nonrepeating_tuples(population, 2)] self.assertEqual(len(random_pairs), len(population)/2) @@ -21,7 +21,7 @@ class RandomNonrepeatingTuplesCase(unittest.TestCase): population = ["alma", "korte", "cseresznye"] # pylint: disable=unnecessary-comprehension - random_pairs = [p for p in match_making.random_nonrepeating_tuples(population, 2)] + random_pairs = [p for p in matchmaking.random_nonrepeating_tuples(population, 2)] self.assertEqual(len(random_pairs), (len(population)+1)/2) @@ -48,6 +48,6 @@ class RandomNonrepeatingTuplesCase(unittest.TestCase): population = [] # pylint: disable=unnecessary-comprehension - random_pairs = [p for p in match_making.random_nonrepeating_tuples(population, 2)] + random_pairs = [p for p in matchmaking.random_nonrepeating_tuples(population, 2)] self.assertEqual(len(random_pairs), 0)