Example #1
0
 def test_get_env_vars(self):
     set_env_var(NON_ASCII_VAR, NON_ASCII_VAL)
     vars = get_env_vars()
     assert_true('PATH' in vars)
     assert_equal(vars[self._upper_on_windows(TEST_VAR)], TEST_VAL)
     assert_equal(vars[self._upper_on_windows(NON_ASCII_VAR)], NON_ASCII_VAL)
     for k, v in vars.items():
         assert_true(isinstance(k, unicode) and isinstance(v, unicode))
 def test_get_env_vars(self):
     set_env_var(NON_ASCII_VAR, NON_ASCII_VAL)
     vars = get_env_vars()
     assert_true('PATH' in vars)
     assert_equal(vars[self._upper_on_windows(TEST_VAR)], TEST_VAL)
     assert_equal(vars[self._upper_on_windows(NON_ASCII_VAR)], NON_ASCII_VAL)
     for k, v in vars.items():
         assert_true(isinstance(k, unicode) and isinstance(v, unicode))
Example #3
0
 def find(self, name):
     var_name, has_default, default_value = name[2:-1].partition('=')
     value = get_env_var(var_name)
     if value is not None:
         return value
     if has_default:
         return default_value
     variable_not_found(name, get_env_vars(),
                        "Environment variable '%s' not found." % name)
 def _construct_env(self, env, rest):
     for key in rest:
         if not key.startswith('env:'):
             raise RuntimeError("'%s' is not supported by this keyword." % key)
         if env is None:
             env = get_env_vars(upper=False)
         env[key[4:]] = rest[key]
     if env:
         env = dict((encode_to_system(key), encode_to_system(env[key]))
                    for key in env)
     return env
Example #5
0
def raise_not_found(name, candidates, msg=None, env_vars=False):
    """Raise DataError for missing variable name.

    Return recommendations for similar variable names if any are found.
    """
    if msg is None:
        msg = "Variable '%s' not found." % name
    if env_vars:
        candidates = list(candidates) + ['%%{%s}' % ev for ev in get_env_vars()]
    normalizer = partial(normalize, ignore='$@%&*{}_', caseless=True,
                         spaceless=True)
    finder = RecommendationFinder(normalizer)
    recommendations = finder.find_recommendations(name, candidates)
    msg = finder.format_recommendations(msg, recommendations)
    raise DataError(msg)
Example #6
0
def _raise_not_found(name, candidates, msg=None, env_vars=False):
    """Raise DataError for missing variable name.

    Return recommendations for similar variable names if any are found.
    """
    if msg is None:
        msg = "Variable '%s' not found." % name
    if env_vars:
        candidates += ['%%{%s}' % var for var in
                       utils.get_env_vars()]
    normalizer = partial(utils.normalize, ignore='$@%&*{}_', caseless=True,
                         spaceless=True)
    finder = utils.RecommendationFinder(normalizer)
    recommendations = finder.find_recommendations(name, candidates)
    msg = finder.format_recommendations(msg, recommendations)
    raise DataError(msg)
Example #7
0
 def _get_candidates(self):
     candidates = dict(get_java_properties())
     candidates.update(get_env_vars())
     return candidates
Example #8
0
 def _get_candidates(self):
     candidates = dict(get_java_properties())
     candidates.update(get_env_vars())
     return candidates