def test_string_to_bool_from_bool(self): examples = ( (True, True), (False, False), ) for example, valid_answer in examples: self.assertEqual(utils.string_to_bool(example), valid_answer)
def test_string_to_bool(self): examples = ( ('true', True), ('yes', True), ('1', True), ('t', True), ('y', True), ('false', False), ('no!', False), ('not', False), ('not a command', False), ) for example, valid_answer in examples: self.assertEqual(utils.string_to_bool(example), valid_answer)
def deduce_model_file_name(version=None): """ Get model file name :param version: version of model :type version: str or None :return: str -- auto deduced file name """ if not version: version = '0.0' model_id = get_model_id() if not model_id or is_model_id_auto_deduced(): raise Exception( 'Cannot get model_id. Please set using legion.init_model(<name>)') date_string = datetime.datetime.now().strftime('%y%m%d%H%M%S') valid_user_names = [ os.getenv(env) for env in legion.config.MODEL_NAMING_UID_ENV if os.getenv(env) ] user_id = valid_user_names[0] if valid_user_names else getpass.getuser() commit_id = get_git_revision(os.getcwd()) if not commit_id: commit_id = '0000' file_name = '%s-%s+%s.%s.%s.model' % (model_id, str(version), date_string, user_id, commit_id) if string_to_bool( os.getenv(*legion.config.EXTERNAL_RESOURCE_USE_BY_DEFAULT)): return '///%s' % file_name default_prefix = os.getenv(*legion.config.LOCAL_DEFAULT_RESOURCE_PREFIX) if default_prefix: return os.path.join(default_prefix, file_name) return file_name