Skip to content
Snippets Groups Projects
Select Git revision
  • 65feed9f41a8a2cbe1c44f91e93be5ed98cb5ceb
  • master default protected
  • amend_commit
  • next
  • dev/nomodifiable
  • dev/discard_vselect
  • dev/catch_shell_error
  • dev/mapping_2
  • dev/close
  • dev/issue_123
  • dev/issue_71
  • dev/mapping
  • dev/remove_end_commit
  • dev/stash
  • dev/test_commit
  • dev/save_commmit_msg
  • dev/push
  • dev/git_diff
  • dev/undo
  • gh-pages
  • dev/display
  • 1.8.0
  • 1.7.3
  • 1.7.2
  • 1.7.1
  • 1.7.0
  • 1.6.0
  • 1.5.2
  • 1.5.1
  • 1.5.0
  • 1.4.2
  • 1.4.1
  • 1.4
  • 1.3
  • 1.2
  • 1.0
  • 1.1
37 results

Changelog

Blame
  • To find the state of this project's repository at the time of any of these versions, check out the tags.
    env.spec.ts 1.78 KiB
    import { setAdminConfig } from '../../config/admin';
    import { getChildProcessEnv } from './env';
    
    describe('getChildProcess environment when trustlevel set to low', () => {
      const envVars = [
        'HTTP_PROXY',
        'HTTPS_PROXY',
        'NO_PROXY',
        'HOME',
        'PATH',
        'LC_ALL',
        'LANG',
        'DOCKER_HOST',
      ];
      beforeEach(() => {
        envVars.forEach((env) => {
          process.env[env] = env;
        });
      });
      afterEach(() => {
        envVars.forEach((env) => delete process.env[env]);
      });
      it('returns default environment variables', () => {
        expect(getChildProcessEnv()).toMatchInlineSnapshot(`
          Object {
            "DOCKER_HOST": "DOCKER_HOST",
            "HOME": "HOME",
            "HTTPS_PROXY": "HTTPS_PROXY",
            "HTTP_PROXY": "HTTP_PROXY",
            "LANG": "LANG",
            "LC_ALL": "LC_ALL",
            "NO_PROXY": "NO_PROXY",
            "PATH": "PATH",
          }
        `);
      });
      it('returns environment variable only if defined', () => {
        delete process.env.PATH;
        expect(getChildProcessEnv()).not.toHaveProperty('PATH');
      });
      it('returns custom environment variables if passed and defined', () => {
        process.env.FOOBAR = 'FOOBAR';
        expect(getChildProcessEnv(['FOOBAR'])).toMatchInlineSnapshot(`
          Object {
            "DOCKER_HOST": "DOCKER_HOST",
            "FOOBAR": "FOOBAR",
            "HOME": "HOME",
            "HTTPS_PROXY": "HTTPS_PROXY",
            "HTTP_PROXY": "HTTP_PROXY",
            "LANG": "LANG",
            "LC_ALL": "LC_ALL",
            "NO_PROXY": "NO_PROXY",
            "PATH": "PATH",
          }
        `);
        delete process.env.LANG;
      });
    
      describe('getChildProcessEnv when trustlevel set to high', () => {
        it('returns process.env if trustlevel set to high', () => {
          setAdminConfig({ exposeAllEnv: true });
          expect(getChildProcessEnv()).toMatchObject(process.env);
        });
      });
    });