aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site/apps/api/tests
diff options
context:
space:
mode:
authorGravatar mbaruh <[email protected]>2022-01-01 14:28:53 +0200
committerGravatar mbaruh <[email protected]>2022-01-01 14:28:53 +0200
commit1798edc10ff5e5adaffe9879f2a9ebb8a7b5c926 (patch)
tree984fb8393fe0a8f17499cb89cc306de455841453 /pydis_site/apps/api/tests
parentMerged infraction and notification settings in JSON (diff)
parentMerge pull request #637 from python-discord/mbaruh-patch-1 (diff)
Merge branch 'main' into new-filter-schema
Diffstat (limited to 'pydis_site/apps/api/tests')
-rw-r--r--pydis_site/apps/api/tests/test_off_topic_channel_names.py57
-rw-r--r--pydis_site/apps/api/tests/test_users.py21
2 files changed, 46 insertions, 32 deletions
diff --git a/pydis_site/apps/api/tests/test_off_topic_channel_names.py b/pydis_site/apps/api/tests/test_off_topic_channel_names.py
index 1825f6e6..2d273756 100644
--- a/pydis_site/apps/api/tests/test_off_topic_channel_names.py
+++ b/pydis_site/apps/api/tests/test_off_topic_channel_names.py
@@ -65,8 +65,15 @@ class EmptyDatabaseTests(AuthenticatedAPITestCase):
class ListTests(AuthenticatedAPITestCase):
@classmethod
def setUpTestData(cls):
- cls.test_name = OffTopicChannelName.objects.create(name='lemons-lemonade-stand', used=False)
- cls.test_name_2 = OffTopicChannelName.objects.create(name='bbq-with-bisk', used=True)
+ cls.test_name = OffTopicChannelName.objects.create(
+ name='lemons-lemonade-stand', used=False, active=True
+ )
+ cls.test_name_2 = OffTopicChannelName.objects.create(
+ name='bbq-with-bisk', used=False, active=True
+ )
+ cls.test_name_3 = OffTopicChannelName.objects.create(
+ name="frozen-with-iceman", used=True, active=False
+ )
def test_returns_name_in_list(self):
"""Return all off-topic channel names."""
@@ -75,29 +82,55 @@ class ListTests(AuthenticatedAPITestCase):
self.assertEqual(response.status_code, 200)
self.assertEqual(
- response.json(),
- [
+ set(response.json()),
+ {
self.test_name.name,
- self.test_name_2.name
- ]
+ self.test_name_2.name,
+ self.test_name_3.name
+ }
)
- def test_returns_single_item_with_random_items_param_set_to_1(self):
+ def test_returns_two_items_with_random_items_param_set_to_2(self):
"""Return not-used name instead used."""
url = reverse('api:bot:offtopicchannelname-list')
- response = self.client.get(f'{url}?random_items=1')
+ response = self.client.get(f'{url}?random_items=2')
self.assertEqual(response.status_code, 200)
- self.assertEqual(len(response.json()), 1)
- self.assertEqual(response.json(), [self.test_name.name])
+ self.assertEqual(len(response.json()), 2)
+ self.assertEqual(set(response.json()), {self.test_name.name, self.test_name_2.name})
def test_running_out_of_names_with_random_parameter(self):
"""Reset names `used` parameter to `False` when running out of names."""
url = reverse('api:bot:offtopicchannelname-list')
- response = self.client.get(f'{url}?random_items=2')
+ response = self.client.get(f'{url}?random_items=3')
self.assertEqual(response.status_code, 200)
- self.assertEqual(response.json(), [self.test_name.name, self.test_name_2.name])
+ self.assertEqual(
+ set(response.json()),
+ {self.test_name.name, self.test_name_2.name, self.test_name_3.name}
+ )
+
+ def test_returns_inactive_ot_names(self):
+ """Return inactive off topic names."""
+ url = reverse('api:bot:offtopicchannelname-list')
+ response = self.client.get(f"{url}?active=false")
+
+ self.assertEqual(response.status_code, 200)
+ self.assertEqual(
+ response.json(),
+ [self.test_name_3.name]
+ )
+
+ def test_returns_active_ot_names(self):
+ """Return active off topic names."""
+ url = reverse('api:bot:offtopicchannelname-list')
+ response = self.client.get(f"{url}?active=true")
+
+ self.assertEqual(response.status_code, 200)
+ self.assertEqual(
+ set(response.json()),
+ {self.test_name.name, self.test_name_2.name}
+ )
class CreationTests(AuthenticatedAPITestCase):
diff --git a/pydis_site/apps/api/tests/test_users.py b/pydis_site/apps/api/tests/test_users.py
index 81bfd43b..9b91380b 100644
--- a/pydis_site/apps/api/tests/test_users.py
+++ b/pydis_site/apps/api/tests/test_users.py
@@ -408,7 +408,7 @@ class UserMetricityTests(AuthenticatedAPITestCase):
in_guild=True,
)
- def test_get_metricity_data_under_1k(self):
+ def test_get_metricity_data(self):
# Given
joined_at = "foo"
total_messages = 1
@@ -428,25 +428,6 @@ class UserMetricityTests(AuthenticatedAPITestCase):
"activity_blocks": total_blocks
})
- def test_get_metricity_data_over_1k(self):
- # Given
- joined_at = "foo"
- total_messages = 1001
- total_blocks = 1001
- self.mock_metricity_user(joined_at, total_messages, total_blocks, [])
-
- # When
- url = reverse('api:bot:user-metricity-data', args=[0])
- response = self.client.get(url)
-
- # Then
- self.assertEqual(response.status_code, 200)
- self.assertCountEqual(response.json(), {
- "joined_at": joined_at,
- "total_messages": total_messages,
- "voice_banned": False,
- })
-
def test_no_metricity_user(self):
# Given
self.mock_no_metricity_user()