コード例 #1
0
    def test_killstatistics_changes(self):
        content = self.load_resource(
            "website_changes/8_community_kill_statistics_world_adra.txt")
        kill_statistics = KillStatistics.from_content(content)

        self.assertIsInstance(kill_statistics, KillStatistics)
        self.assertEqual(kill_statistics.world, "Adra")
        self.assertEqual(len(kill_statistics.entries), 784)

        # players shortcurt property
        self.assertEqual(kill_statistics.players,
                         kill_statistics.entries["players"])
        self.assertEqual(kill_statistics.players.last_day_killed, 3)
        self.assertEqual(kill_statistics.players.last_day_killed,
                         kill_statistics.players.last_day_players_killed)
        self.assertEqual(kill_statistics.players.last_week_killed, 76)
        self.assertEqual(kill_statistics.players.last_week_killed,
                         kill_statistics.players.last_week_players_killed)

        # demons
        demons_entry = kill_statistics.entries["demons"]
        self.assertEqual(84, demons_entry.last_day_killed)
        self.assertEqual(1, demons_entry.last_day_players_killed)
        self.assertEqual(1439, demons_entry.last_week_killed)
        self.assertEqual(1, demons_entry.last_week_players_killed)
コード例 #2
0
    def test_kill_statistics_from_content(self):
        """Testing parsing kill statistics"""
        content = self._load_resource(FILE_KILL_STATISTICS_FULL)
        kill_statistics = KillStatistics.from_content(content)

        self.assertEqual(kill_statistics.world, "Gladera")
        self.assertEqual(len(kill_statistics.entries), 920)
        self.assertIsNotNone(kill_statistics.total)
        self.assertIsNotNone(kill_statistics.url)

        # players shortcurt property
        self.assertEqual(kill_statistics.players,
                         kill_statistics.entries["players"])
        self.assertEqual(kill_statistics.players.last_day_killed, 2)
        self.assertEqual(kill_statistics.players.last_day_killed,
                         kill_statistics.players.last_day_players_killed)
        self.assertEqual(kill_statistics.players.last_week_killed, 7)
        self.assertEqual(kill_statistics.players.last_week_killed,
                         kill_statistics.players.last_week_players_killed)

        # demons
        demons_entry = kill_statistics.entries["demons"]
        self.assertEqual(2071, demons_entry.last_day_killed)
        self.assertEqual(1, demons_entry.last_day_players_killed)
        self.assertEqual(18484, demons_entry.last_week_killed)
        self.assertEqual(8, demons_entry.last_week_players_killed)
コード例 #3
0
ファイル: tests_client.py プロジェクト: ZenelShabani/tibia.py
    async def test_client_fetch_kill_statistics(self, mock):
        """Testing fetching kill statistics"""
        world = "Antica"
        content = self.load_resource(FILE_KILL_STATISTICS_FULL)
        mock.get(KillStatistics.get_url(world), status=200, body=content)
        kill_statistics = await self.client.fetch_kill_statistics(world)

        self.assertIsInstance(kill_statistics.data, KillStatistics)
コード例 #4
0
ファイル: client.py プロジェクト: jpars26/BotDiscord
    async def fetch_kill_statistics(self, world):
        """Fetches the kill statistics of a world from Tibia.com.

        Parameters
        ----------
        world: :class:`str`
            The name of the world.

        Returns
        -------
        :class:`KillStatistics`
            The kill statistics of the world if found.

        Raises
        ------
        Forbidden
            If a 403 Forbidden error was returned.
            This usually means that Tibia.com is rate-limiting the client because of too many requests.
        NetworkError
            If there's any connection errors during the request.
        """
        content = await self._get(KillStatistics.get_url(world))
        kill_statistics = KillStatistics.from_content(content)
        return kill_statistics
コード例 #5
0
 def test_kill_statistics_from_content_unrelated_section(self):
     """Testing parsing an unrelated section"""
     content = self._load_resource(self.FILE_UNRELATED_SECTION)
     with self.assertRaises(InvalidContent):
         KillStatistics.from_content(content)
コード例 #6
0
    def test_kill_statistics_from_content_empty(self):
        """Testing parsing empty kill statistics"""
        content = self._load_resource(FILE_KILL_STATISTICS_EMPTY)
        kill_statistics = KillStatistics.from_content(content)

        self.assertIsNone(kill_statistics)