def test_request_last_mission_id(test_dao, test_configuration): """ request_last_id() should return the last Mission ID used in the RAMSTK Program database. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) _last_id = DUT.request_last_id(entity='mission') assert _last_id == 2
def test_request_get_attributes(test_dao, test_configuration): """ request_get_attributes() should return a dict of {attribute name:attribute value} pairs. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) _attributes = DUT.request_get_attributes(1) assert isinstance(_attributes, dict) assert _attributes['revision_id'] == 1
def test_request_set_attributes(test_dao, test_configuration): """ request_set_attributes() should return a zero error code on success. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) _error_code, _msg = DUT.request_set_attributes(1, ATTRIBUTES) assert _error_code == 0 assert _msg == ('RAMSTK SUCCESS: Updating RAMSTKMission 1 attributes.')
def test_request_do_update_all(test_dao, test_configuration): """ request_do_update_all() should return False on success. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) assert not DUT.request_do_update_all()
def test_request_last_environment_id(test_dao, test_configuration): """ request_last_id() should return the last Environment ID used in the RAMSTK Program database. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) assert DUT.request_last_id(entity='environment') == 2
def test_request_do_delete_non_existent_id(test_dao, test_configuration): """ request_do_delete() should return True when attempting to delete a non-existent Node ID. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) assert DUT.request_do_delete(222)
def test_request_do_insert_mission(test_dao, test_configuration): """ request_do_insert() should return False on success. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) DUT.request_do_select_all(revision_id=1) assert not DUT.request_do_insert(entity_id=1, parent_id=0, level='mission')
def test_request_do_select_all(test_dao, test_configuration): """ request_do_select_all() should return a treelib Tree() with the Usage Profile. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) assert isinstance(DUT.request_do_select_all(revision_id=1), Tree)
def test_create_data_controller(test_dao, test_configuration): """ __init__() should create an instance of a UsageProfile data controller. """ DUT = dtcUsageProfile(test_dao, test_configuration, test=True) assert isinstance(DUT, dtcUsageProfile) assert isinstance(DUT._dtm_data_model, dtmUsageProfile)
def request_do_open_program(self): """ Request an RAMSTK Program database be opened for analyses. :return: False if successful or True if an error is encountered. :rtype: bool """ _return = False _database = None if self.RAMSTK_CONFIGURATION.RAMSTK_BACKEND == 'sqlite': _database = self.RAMSTK_CONFIGURATION.RAMSTK_BACKEND + ':///' + \ self.RAMSTK_CONFIGURATION.RAMSTK_PROG_INFO['database'] # If the database was successfully opened, create an instance of each # of the slave data controllers. _error_code, _msg = self.ramstk_model.do_open_program(_database) if _error_code == 0: pub.sendMessage('requestOpen') self.dic_controllers['revision'] = dtcRevision( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['function'] = dtcFunction( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['requirement'] = dtcRequirement( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['hardware'] = dtcHardwareBoM( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['validation'] = dtcValidation( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['profile'] = dtcUsageProfile( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['definition'] = dtcFailureDefinition( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['ffmea'] = dtcFMEA( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False, functional=True) self.dic_controllers['stakeholder'] = dtcStakeholder( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['allocation'] = dtcAllocation( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['hazops'] = dtcHazardAnalysis( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['similaritem'] = dtcSimilarItem( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) self.dic_controllers['dfmeca'] = dtcFMEA( self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False, functional=False) self.dic_controllers['pof'] = dtcPoF(self.ramstk_model.program_dao, self.RAMSTK_CONFIGURATION, test=False) # Find which modules are active for the program being opened. self.dic_controllers['options'].request_do_select_all(site=False, program=True) _program_info = self.dic_controllers[ 'options'].request_get_options(site=False, program=True) self.RAMSTK_CONFIGURATION.RAMSTK_MODULES['function'] = \ _program_info['function_active'] self.RAMSTK_CONFIGURATION.RAMSTK_MODULES['requirement'] = \ _program_info['requirement_active'] self.RAMSTK_CONFIGURATION.RAMSTK_MODULES['hardware'] = \ _program_info['hardware_active'] self.RAMSTK_CONFIGURATION.RAMSTK_MODULES['validation'] = \ _program_info['vandv_active'] _page = 1 for _module in self._lst_modules: if self.RAMSTK_CONFIGURATION.RAMSTK_MODULES[_module] == 1: self.RAMSTK_CONFIGURATION.RAMSTK_PAGE_NUMBER[ _page] = _module _page += 1 # TODO: Where to put this code for the status icon? _icon = self.RAMSTK_CONFIGURATION.RAMSTK_ICON_DIR + \ '/32x32/db-connected.png' _icon = gtk.gdk.pixbuf_new_from_file_at_size(_icon, 22, 22) self.icoStatus.set_from_pixbuf(_icon) self.icoStatus.set_tooltip( _(u"RAMSTK is connected to program database " u"{0:s}.".format( self.RAMSTK_CONFIGURATION.RAMSTK_PROG_INFO['database']))) self.loaded = True self.RAMSTK_CONFIGURATION.RAMSTK_USER_LOG.info(_msg) if not self.__test: pub.sendMessage('openedProgram') else: self.RAMSTK_CONFIGURATION.RAMSTK_DEBUG_LOG.error(_msg) _return = True return _return