예제 #1
0
    def setUp(self):
        super(Test_autoassign, self).setUp()
        self.conf = CfgConfigParser()
        self.conf.loadFromString(
            """
[preferences]
no_autoassign_level: 20
autoassign: On
team_swap_threshold: 2
        """
        )
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
        self.assertTrue(self.p._autoassign)
        self.assertEqual(20, self.p._no_autoassign_level)

        def my_write(data):
            if data[0] == "admin.movePlayer":
                self.console.routeFrostbitePacket(["player.onTeamChange", data[1], data[2], data[3]])
                return ["OK"]
            else:
                return Mock()

        self.write_patcher = patch.object(self.console, "write", side_effect=my_write)
        self.write_mock = self.write_patcher.start()
예제 #2
0
    def setUp(self):
        super(Test_autoassign, self).setUp()
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""
[preferences]
no_autoassign_level: 20
autoassign: On
team_swap_threshold: 2
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
        self.assertTrue(self.p._autoassign)
        self.assertEqual(20, self.p._no_autoassign_level)

        def my_write(data):
            if data[0] == 'admin.movePlayer':
                self.console.routeFrostbitePacket(
                    ['player.onTeamChange', data[1], data[2], data[3]])
                return ['OK']
            else:
                return Mock()

        self.write_patcher = patch.object(self.console,
                                          "write",
                                          side_effect=my_write)
        self.write_mock = self.write_patcher.start()
예제 #3
0
 def setUp(self):
     Bf3TestCase.setUp(self)
     self.conf = CfgConfigParser()
     with logging_disabled():
         self.p = Poweradminbf3Plugin(self.console, self.conf)
     when(self.console).write(('vars.roundStartPlayerCount',)).thenReturn(['0'])
     when(self.console).write(('vars.roundLockdownCountdown',)).thenReturn(['3'])
     self.scrambleTeams_mock = self.p._scrambler.scrambleTeams = Mock(name="scrambleTeams", wraps=self.p._scrambler.scrambleTeams)
     self.scrambleTeams_mock.reset_mock()
    def setUp(self):
        Bf3TestCase.setUp(self)
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
endround: 20
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
            self.superadmin.connects('superadmin')
예제 #5
0
    def setUp(self):
        Bf3TestCase.setUp(self)
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
vipload: 20
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
            self.moderator.connects("moderator")
예제 #6
0
    def setUp(self):
        Bf3TestCase.setUp(self)
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
vipload: 20
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
            self.moderator.connects("moderator")
예제 #7
0
    def setUp(self):
        Bf3TestCase.setUp(self)
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
endround: 20
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()
            self.superadmin.connects('superadmin')
 def setUp(self):
     Bf3TestCase.setUp(self)
     self.conf = CfgConfigParser()
     with logging_disabled():
         self.p = Poweradminbf3Plugin(self.console, self.conf)
     when(self.console).write(
         ('vars.roundStartPlayerCount', )).thenReturn(['0'])
     when(self.console).write(
         ('vars.roundLockdownCountdown', )).thenReturn(['3'])
     self.scrambleTeams_mock = self.p._scrambler.scrambleTeams = Mock(
         name="scrambleTeams", wraps=self.p._scrambler.scrambleTeams)
     self.scrambleTeams_mock.reset_mock()
    def setUp(self):
        super(Test_cmd_idle, self).setUp()
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
idle: 40
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()

        self.p.error = Mock(wraps=self.p.error)
        logging.getLogger('output').setLevel(logging.DEBUG)
    def setUp(self):
        super(Test_cmd_idle, self).setUp()
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""[commands]
idle: 40
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()

        self.p.error = Mock(wraps=self.p.error)
        logging.getLogger('output').setLevel(logging.DEBUG)
    def _assert_scrambleTeams_has_calls_on_level_started(
            self, scramble_mode, gamemode_blacklist, next_gamemode,
            next_round_number, expected_calls):
        # Given
        self.conf.loadFromString("""
[scrambler]
mode: %s
strategy: random
gamemodes_blacklist: %s""" % (scramble_mode, '|'.join(gamemode_blacklist)))
        with logging_disabled():
            self.p.onLoadConfig()
            self.p.onStartup()

        # Make sure context is
        self.assertEqual(gamemode_blacklist,
                         self.p._autoscramble_gamemode_blacklist)
        if scramble_mode == 'round':
            self.assertTrue(self.p._autoscramble_rounds)
            self.assertFalse(self.p._autoscramble_maps)
        elif scramble_mode == 'map':
            self.assertFalse(self.p._autoscramble_rounds)
            self.assertTrue(self.p._autoscramble_maps)
        elif scramble_mode == 'off':
            self.assertFalse(self.p._autoscramble_rounds)
            self.assertFalse(self.p._autoscramble_maps)
        else:
            self.fail("unsupported scramble mode : " + scramble_mode)

        # When
        self.joe.connects('joe')
        when(self.console).write(('serverInfo', )).thenReturn([
            'i3D.net - BigBrotherBot #3 (DE)', '1', '16', next_gamemode,
            'MP_007',
            str(next_round_number), '2', '4', '0', '0', '0', '0', '50', '',
            'false', 'true', 'false', '790596', '1484', '', '', '', 'EU',
            'AMS', 'DE', 'false'
        ])
        self.console.routeFrostbitePacket([
            'server.onLevelLoaded', 'MP_007', next_gamemode,
            str(next_round_number), '2'
        ])
        when(self.console).getClient('joe').thenReturn(self.joe)
        self.console.routeFrostbitePacket(['player.onSpawn', 'joe', '1'])

        # Then
        self.scrambleTeams_mock.assert_has_calls(expected_calls)
    def setUp(self):
        super(Test_cmd_changeteam, self).setUp()
        self.conf = CfgConfigParser()
        self.conf.loadFromString("""
[commands]
changeteam: mod
        """)
        with logging_disabled():
            self.p = Poweradminbf3Plugin(self.console, self.conf)
            self.p.onLoadConfig()
            self.p.onStartup()

        def my_write(data):
            if data[0] == 'admin.movePlayer':
                self.console.routeFrostbitePacket(['player.onTeamChange', data[1], data[2], data[3]])
                return ['OK']
            else:
                return Mock()

        self.write_patcher = patch.object(self.console, "write", side_effect=my_write)
        self.write_mock = self.write_patcher.start()
예제 #13
0
    def _assert_scrambleTeams_has_calls_on_level_started(self, scramble_mode, gamemode_blacklist, next_gamemode, next_round_number, expected_calls):
        # Given
        self.conf.loadFromString("""
[scrambler]
mode: %s
strategy: random
gamemodes_blacklist: %s""" % (scramble_mode, '|'.join(gamemode_blacklist)))
        with logging_disabled():
            self.p.onLoadConfig()
            self.p.onStartup()

        # Make sure context is
        self.assertEqual(gamemode_blacklist, self.p._autoscramble_gamemode_blacklist)
        if scramble_mode == 'round':
            self.assertTrue(self.p._autoscramble_rounds)
            self.assertFalse(self.p._autoscramble_maps)
        elif scramble_mode == 'map':
            self.assertFalse(self.p._autoscramble_rounds)
            self.assertTrue(self.p._autoscramble_maps)
        elif scramble_mode == 'off':
            self.assertFalse(self.p._autoscramble_rounds)
            self.assertFalse(self.p._autoscramble_maps)
        else:
            self.fail("unsupported scramble mode : " + scramble_mode)

        # When
        self.joe.connects('joe')
        when(self.console).write(('serverInfo',)).thenReturn([ 'i3D.net - BigBrotherBot #3 (DE)', '1', '16',
                                                                next_gamemode, 'MP_007', str(next_round_number), '2', '4', '0', '0', '0', '0', '50', '', 'false', 'true',
                                                                'false', '790596', '1484', '', '', '', 'EU', 'AMS', 'DE', 'false'])
        self.console.routeFrostbitePacket(['server.onLevelLoaded', 'MP_007', next_gamemode, str(next_round_number), '2'])
        when(self.console).getClient('joe').thenReturn(self.joe)
        self.console.routeFrostbitePacket(['player.onSpawn', 'joe', '1'])

        # Then
        self.scrambleTeams_mock.assert_has_calls(expected_calls)