Beispiel #1
0
class StatTestCase(EosTestCase):
    """
    Additional functionality provided:

    self.rt -- restriction tracker instance for tests
    self.set_ship -- set ship to fit which uses self.rt
    self.set_character -- set character to fit whic uses
    self.rt
    self.track_holder -- add holder to restriction tracker
    self.untrack_holder -- remove holder from restriction
    tracker
    self.get_restriction_error -- get restriction error for
    passed holder of passed restriction type. If no error
    occurred, return None
    self.assert_restriction_buffers_empty -- checks if
    restriction tracker buffers are clear
    """
    def setUp(self):
        super().setUp()
        self.fit = Mock()
        self.fit.ship = None
        self.fit.character = None
        self.fit.modules.high = []
        self.fit.modules.med = []
        self.fit.modules.low = []
        self.fit.rigs = set()
        self.fit.subsystems = set()
        self.fit.drones = set()
        self.st = StatTracker(self.fit)

    def set_ship(self, holder):
        self.fit.ship = holder

    def set_character(self, holder):
        self.fit.character = holder

    def track_holder(self, holder):
        self.st._enable_states(holder,
                               set(filter(lambda s: s <= holder.state, State)))

    def untrack_holder(self, holder):
        self.st._disable_states(
            holder, set(filter(lambda s: s <= holder.state, State)))

    def assert_stat_buffers_empty(self):
        entry_num = 0
        # Get dictionary-container with all registers used by tracker,
        # and cycle through all of them
        tracker_container = self.st._StatTracker__registers
        for register_group in tracker_container.values():
            for register in register_group:
                entry_num += self._get_object_buffer_entry_amount(register)
        # Raise error if we found any data in any register
        if entry_num > 0:
            plu = 'y' if entry_num == 1 else 'ies'
            msg = '{} entr{} in buffers: buffers must be empty'.format(
                entry_num, plu)
            self.fail(msg=msg)
Beispiel #2
0
class StatTestCase(EosTestCase):
    """
    Additional functionality provided:

    self.rt -- restriction tracker instance for tests
    self.set_ship -- set ship to fit which uses self.rt
    self.set_character -- set character to fit whic uses
    self.rt
    self.track_holder -- add holder to restriction tracker
    self.untrack_holder -- remove holder from restriction
    tracker
    self.get_restriction_error -- get restriction error for
    passed holder of passed restriction type. If no error
    occurred, return None
    self.assert_restriction_buffers_empty -- checks if
    restriction tracker buffers are clear
    """

    def setUp(self):
        EosTestCase.setUp(self)
        self.fit = Mock()
        self.fit.ship = None
        self.fit.character = None
        self.fit.modules.high = []
        self.fit.modules.med = []
        self.fit.modules.low = []
        self.fit.rigs = set()
        self.fit.subsystems = set()
        self.fit.drones = set()
        self.st = StatTracker(self.fit)

    def set_ship(self, holder):
        self.fit.ship = holder

    def set_character(self, holder):
        self.fit.character = holder

    def track_holder(self, holder):
        self.st._enable_states(holder, set(filter(lambda s: s <= holder.state, State)))

    def untrack_holder(self, holder):
        self.st._disable_states(holder, set(filter(lambda s: s <= holder.state, State)))

    def assert_stat_buffers_empty(self):
        entry_num = 0
        # Get dictionary-container with all registers used by tracker,
        # and cycle through all of them
        tracker_container = self.st._StatTracker__registers
        for register_group in tracker_container.values():
            for register in register_group:
                entry_num += self._get_object_buffer_entry_amount(register)
        # Raise error if we found any data in any register
        if entry_num > 0:
            plu = 'y' if entry_num == 1 else 'ies'
            msg = '{} entr{} in buffers: buffers must be empty'.format(entry_num, plu)
            self.fail(msg=msg)
Beispiel #3
0
 def setUp(self):
     super().setUp()
     self.fit = Mock()
     self.fit.ship = None
     self.fit.character = None
     self.fit.modules.high = []
     self.fit.modules.med = []
     self.fit.modules.low = []
     self.fit.rigs = set()
     self.fit.subsystems = set()
     self.fit.drones = set()
     self.st = StatTracker(self.fit)
Beispiel #4
0
 def setUp(self):
     EosTestCase.setUp(self)
     self.fit = Mock()
     self.fit.ship = None
     self.fit.character = None
     self.fit.modules.high = []
     self.fit.modules.med = []
     self.fit.modules.low = []
     self.fit.rigs = set()
     self.fit.subsystems = set()
     self.fit.drones = set()
     self.st = StatTracker(self.fit)