def setUp(self): self.mock_skill = mock.Mock(name='Skill') self.mock_skill.skill_id = 'fortytwo-skill' def find_resource(page, folder): return '/test/{}/{}'.format(folder, page) self.mock_skill.find_resource = find_resource self.gui = SkillGUI(self.mock_skill)
def __init__(self, name=None, bus=None, use_settings=True): self.name = name or self.__class__.__name__ self.resting_name = None self.skill_id = '' # will be set from the path, so guaranteed unique self.settings_meta = None # set when skill is loaded in SkillLoader # Get directory of skill #: Member variable containing the absolute path of the skill's root #: directory. E.g. /opt/mycroft/skills/my-skill.me/ self.root_dir = dirname(abspath(sys.modules[self.__module__].__file__)) if use_settings: self.settings = Settings(self) self._initial_settings = deepcopy(self.settings.as_dict()) else: self.settings = None #: Set to register a callback method that will be called every time #: the skills settings are updated. The referenced method should #: include any logic needed to handle the updated settings. self.settings_change_callback = None self.gui = SkillGUI(self) self._bus = None self._enclosure = None self.bind(bus) #: Mycroft global configuration. (dict) self.config_core = Configuration.get() self.dialog_renderer = None #: Filesystem access to skill specific folder. #: See mycroft.filesystem for details. self.file_system = FileSystemAccess(join('skills', self.name)) self.log = LOG.create_logger(self.name) #: Skill logger instance self.reload_skill = True #: allow reloading (default True) self.events = EventContainer(bus) self.voc_match_cache = {} # Delegator classes self.event_scheduler = EventSchedulerInterface(self.name) self.intent_service = IntentServiceInterface()
def __init__(self, name=None, bus=None, use_settings=True): self.name = name or self.__class__.__name__ self.resting_name = None self.skill_id = '' # will be set from the path, so guaranteed unique self.settings_meta = None # set when skill is loaded in SkillLoader # Get directory of skill self.root_dir = dirname(abspath(sys.modules[self.__module__].__file__)) if use_settings: self._initial_settings = get_local_settings( self.root_dir, self.name) self.settings = Settings(self) else: self.settings = None self.settings_change_callback = None self.gui = SkillGUI(self) self._bus = None self._enclosure = None self.bind(bus) #: Mycroft global configuration. (dict) self.config_core = Configuration.get() self.dialog_renderer = None #: Filesystem access to skill specific folder. #: See mycroft.filesystem for details. self.file_system = FileSystemAccess(join('skills', self.name)) self.log = LOG.create_logger(self.name) #: Skill logger instance self.reload_skill = True #: allow reloading (default True) self.events = EventContainer(bus) self.voc_match_cache = {} # Delegator classes self.event_scheduler = EventSchedulerInterface(self.name) self.intent_service = IntentServiceInterface()