コード例 #1
0
class Test_getPlayerPings(BFHTestCase):
    def setUp(self):
        BFHTestCase.setUp(self)
        self.conf = XmlConfigParser()
        self.conf.loadFromString("""
                <configuration>
                </configuration>
            """)
        self.parser = BfhParser(self.conf)
        self.p1 = FakeClient(self.parser, name="Player1")
        self.p2 = FakeClient(self.parser, name="Player2")

    def test_no_player(self):
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({}, actual_result)

    def test_one_player(self):
        # GIVEN
        self.p1.connects("Player1")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '1', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_two_player(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '2', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0', 'Player2', 'EA_XXY', '1', '1',
            '0', '0', '0', '1', '450', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({
            self.p1.cid: 140,
            self.p2.cid: 450
        }, actual_result)

    def test_two_player_filter_client_ids(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '2', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0', 'Player2', 'EA_XXY', '1', '1',
            '0', '0', '0', '1', '450', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings(
            filter_client_ids=[self.p1.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_bad_data_filter_client_ids(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '1', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0', 'Player2', 'EA_XYZ', '1', '1',
            '0', '0', '0', '1', 'f00', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings(
            filter_client_ids=[self.p1.cid, self.p2.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_bad_data(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '1', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0', 'Player2', 'EA_XYZ', '1', '1',
            '0', '0', '0', '1', 'f00', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_exception(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn([
            '10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths',
            'score', 'rank', 'ping', 'type', '1', 'Player1', 'EA_XXX', '1',
            '1', '0', '0', '0', '1', '140', '0', 'Player2', 'EA_XYZ', '1', '1',
            '0', '0', '0', '1', 'f00', '0'
        ])
        # WHEN
        actual_result = self.parser.getPlayerPings(
            filter_client_ids=[self.p1.cid, self.p2.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)
コード例 #2
0
class Test_getPlayerPings(BFHTestCase):
    def setUp(self):
        BFHTestCase.setUp(self)
        self.conf = XmlConfigParser()
        self.conf.loadFromString("""
                <configuration>
                </configuration>
            """)
        self.parser = BfhParser(self.conf)
        self.p1 = FakeClient(self.parser, name="Player1")
        self.p2 = FakeClient(self.parser, name="Player2")

    def test_no_player(self):
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({}, actual_result)

    def test_one_player(self):
        # GIVEN
        self.p1.connects("Player1")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '1', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_two_player(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '2', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0',
             'Player2', 'EA_XXY', '1', '1', '0', '0', '0', '1', '450', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({self.p1.cid: 140, self.p2.cid: 450}, actual_result)

    def test_two_player_filter_client_ids(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '2', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0',
             'Player2', 'EA_XXY', '1', '1', '0', '0', '0', '1', '450', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings(filter_client_ids=[self.p1.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_bad_data_filter_client_ids(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '1', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0',
             'Player2', 'EA_XYZ', '1', '1', '0', '0', '0', '1', 'f00', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings(filter_client_ids=[self.p1.cid, self.p2.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_bad_data(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '1', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0',
             'Player2', 'EA_XYZ', '1', '1', '0', '0', '0', '1', 'f00', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings()
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)

    def test_exception(self):
        # GIVEN
        self.p1.connects("Player1")
        self.p2.connects("Player2")
        when(self.parser).write(('admin.listPlayers', 'all')).thenReturn(
            ['10', 'name', 'guid', 'teamId', 'squadId', 'kills', 'deaths', 'score', 'rank', 'ping', 'type',
             '1', 'Player1', 'EA_XXX', '1', '1', '0', '0', '0', '1', '140', '0',
             'Player2', 'EA_XYZ', '1', '1', '0', '0', '0', '1', 'f00', '0']
        )
        # WHEN
        actual_result = self.parser.getPlayerPings(filter_client_ids=[self.p1.cid, self.p2.cid])
        # THEN
        self.assertDictEqual({self.p1.cid: 140}, actual_result)