def test_read_env_error(self):
   errors = []
   self.assertEqual(read_env_file(BAD_ENV, errors.append), RESULT)
   self.assertEqual(errors, [
       "WARNING: Didn't understand the following environment file lines:",
       "11. >>> This line isn't right.",
       '12. >>> NO SPACES IN NAMES="valid value"'])
Example #2
0
def add_user_env(env, dotfile, print=print):
    df = os.path.expanduser(dotfile)
    try:
        with open(df, 'r') as f:
            dotvars = read_env_file(f.read())
    except IOError:
        if os.path.exists(df):
            warn("Dotfile %s exists but can't be read." % dotfile, print)
        dotvars = {}

    bad_names = []
    for name, value in dotvars.items():
        if name in env:
            if is_string(env[name]):
                env[name] = value
            else:
                env[name] = shlex.split(value)
        else:
            bad_names.append(name)
    if bad_names:
        error = _BAD_VARS_ERROR % (dotfile, '\n  '.join(bad_names))
        warn(error, print)

    for name, default in env.items():
        env[name] = os.environ.get(name, default)
Example #3
0
def add_user_env(env, dotfile, print=print):
    df = os.path.expanduser(dotfile)
    try:
        with open(df, 'r') as f:
            dotvars = read_env_file(f.read())
    except IOError:
        if os.path.exists(df):
            warn("Dotfile %s exists but can't be read." % dotfile, print)
        dotvars = {}

    bad_names = []
    for name, value in dotvars.items():
        if name in env:
            if is_string(env[name]):
                env[name] = value
            else:
                env[name] = shlex.split(value)
        else:
            bad_names.append(name)
    if bad_names:
        error = _BAD_VARS_ERROR % (dotfile, '\n  '.join(bad_names))
        warn(error, print)

    for name, default in env.items():
        env[name] = os.environ.get(name, default)
Example #4
0
 def test_read_env_error(self):
     errors = []
     self.assertEqual(read_env_file(BAD_ENV, errors.append), RESULT)
     self.assertEqual(errors, [
         "WARNING: Didn't understand the following environment file lines:",
         "11. >>> This line isn't right.",
         '12. >>> NO SPACES IN NAMES="valid value"'
     ])
 def test_read_env(self):
   self.assertEqual(read_env_file(ENV), RESULT)
 def test_read_json(self):
   self.assertEqual(read_env_file(JSON), RESULT)
Example #7
0
 def test_read_env(self):
     self.assertEqual(read_env_file(ENV), RESULT)
Example #8
0
 def test_read_json(self):
     self.assertEqual(read_env_file(JSON), RESULT)