Example #1
0
 def _generate_member_embed(self):
     """Analyzes the subject as a member."""
     self.embed = self.ctx.bot.generate_embed(
         '📈', f'Przygotowano raport o użytkowniku {self.subject}', self.description
     )
     self.embed.add_field(
         name='Utworzył konto', value=human_datetime(self.subject.created_at, utc=True), inline=False
     )
     self.embed.add_field(
         name='Ostatnio dołączył do serwera', value=human_datetime(self.subject.joined_at, utc=True), inline=False
     )
     self._embed_personal_stats()
Example #2
0
 def test_singular_day_in_n_days(self):
     for n in range(3, 8):
         with self.subTest(n=n):
             returned_time_difference = human_datetime(
                 NOW_OVERRIDE + dt.timedelta(n), utc=False, now_override=NOW_OVERRIDE
             )
             expected_time_difference = f'{24 + n} grudnia 2013 o 12:00, za {n:n} dni'
             self.assertEqual(returned_time_difference, expected_time_difference)
Example #3
0
 def test_singular_day_n_days_ago(self):
     for n in range(3, 8):
         with self.subTest(n=n):
             returned_time_difference = human_datetime(
                 NOW_OVERRIDE - dt.timedelta(n), naive=False, now_override=NOW_OVERRIDE
             )
             expected_time_difference = f'{24 - n} grudnia 2013 o 12:00, {n:n} dni temu'
             self.assertEqual(returned_time_difference, expected_time_difference)
Example #4
0
 def _generate_category_embed(self):
     """Analyzes the subject as a category."""
     self.embed = self.ctx.bot.generate_embed(
         '📈', f'Przygotowano raport o kategorii {self.subject}', self.description
     )
     self.embed.add_field(name='Utworzono', value=human_datetime(self.subject.created_at, utc=True), inline=False)
     if self.total_message_count:
         earliest = self.earliest_relevant_message
         self.embed.add_field(
             name=f'Wysłano pierwszą wiadomość {"w przedziale czasowym" if self.last_days else ""}',
             value=md_link(
                 human_datetime(earliest.datetime),
                 f'https://discordapp.com/channels/{earliest.server_id}/{earliest.channel_id}/{earliest.id}'
             ),
             inline=False
         )
     self.embed.add_field(name='Kanałów tekstowych', value=f'{len(self.subject.text_channels):n}')
     self.embed.add_field(name='Kanałów głosowych', value=f'{len(self.subject.voice_channels):n}')
     self._embed_general_message_stats()
     self._embed_top_visible_channel_stats()
     self._embed_top_active_user_stats()
Example #5
0
 def _embed_personal_stats(self):
     if self.total_message_count:
         earliest = self.earliest_relevant_message
         latest = self.latest_relevant_message
         self.embed.add_field(
             name=f'Wysłał pierwszą wiadomość na serwerze {"w przedziale czasowym" if self.last_days else ""}',
             value=md_link(
                 human_datetime(earliest.datetime),
                 f'https://discordapp.com/channels/{earliest.server_id}/{earliest.channel_id}/{earliest.id}'
             ),
             inline=False
         )
         if self.ctx.author != self.subject:
             self.embed.add_field(
                 name='Wysłał ostatnią wiadomość na serwerze',
                 value=md_link(
                     human_datetime(latest.datetime),
                     f'https://discordapp.com/channels/{latest.server_id}/{latest.channel_id}/{latest.id}'
                 ),
                 inline=False
             )
     self._embed_general_message_stats()
     self._embed_top_visible_channel_stats()
Example #6
0
 def test_singular_day_after_tomorrow(self):
     returned_time_difference = human_datetime(NOW_OVERRIDE + dt.timedelta(2), utc=False, now_override=NOW_OVERRIDE)
     expected_time_difference = f'26 grudnia 2013 o 12:00, pojutrze'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #7
0
 def test_singular_tomorrow_less_than_24_hours_later(self):
     returned_time_difference = human_datetime(
         NOW_OVERRIDE + dt.timedelta(hours=16), utc=False, now_override=NOW_OVERRIDE
     )
     expected_time_difference = f'25 grudnia 2013 o 4:00, jutro'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #8
0
 def test_singular_today_no_days_difference(self):
     returned_time_difference = human_datetime(
         NOW_OVERRIDE, utc=False, days_difference=False, now_override=NOW_OVERRIDE
     )
     expected_time_difference = f'24 grudnia 2013 o 12:00'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #9
0
 def test_singular_today_no_name_month(self):
     returned_time_difference = human_datetime(NOW_OVERRIDE, utc=False, name_month=False, now_override=NOW_OVERRIDE)
     expected_time_difference = f'24.12.2013 o 12:00, dzisiaj'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #10
0
 def test_singular_yesterday(self):
     returned_time_difference = human_datetime(NOW_OVERRIDE - dt.timedelta(1), utc=False, now_override=NOW_OVERRIDE)
     expected_time_difference = f'23 grudnia 2013 o 12:00, wczoraj'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #11
0
 def test_singular_tomorrow(self):
     returned_time_difference = human_datetime(
         NOW_OVERRIDE + dt.timedelta(1), naive=False, now_override=NOW_OVERRIDE
     )
     expected_time_difference = f'25 grudnia 2013 o 12:00, jutro'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #12
0
 def test_singular_today_no_time(self):
     returned_time_difference = human_datetime(
         NOW_OVERRIDE, naive=False, time=False, now_override=NOW_OVERRIDE
     )
     expected_time_difference = f'24 grudnia 2013, dzisiaj'
     self.assertEqual(returned_time_difference, expected_time_difference)
Example #13
0
 def test_singular_day_before_yesterday(self):
     returned_time_difference = human_datetime(
         NOW_OVERRIDE - dt.timedelta(2), naive=False, now_override=NOW_OVERRIDE
     )
     expected_time_difference = f'22 grudnia 2013 o 12:00, przedwczoraj'
     self.assertEqual(returned_time_difference, expected_time_difference)