protected final void doPrepareEnvironment()

in rake-runner-test/src/jetbrains/slow/plugins/rakerunner/AbstractBundlerBasedRakeRunnerTest.java [64:85]


  protected final void doPrepareEnvironment() throws Throwable {
    if (SystemInfo.isUnix) {
      doPrepareGemset(getRubyVersion(), myRVMGemsetName, LOG, myGemfile);
      if (RakeRunnerTestUtil.isUseRVM()) gemsetToDelete.add(getRubyVersion() + "@" + myRVMGemsetName);
    } else if (SystemInfo.isWindows) {
      final File interpreter;
      try {
        interpreter = RakeRunnerTestUtil.getWindowsInterpreterExecutableFile(getRubyVersion());
        final File bin = interpreter.getParentFile();
        try {
          final Map<String, String> env = new HashMap<String, String>(System.getenv());
          OSUtil.prependToPATHEnvVariable(bin.getAbsolutePath(), env);
          RunCommandsHelper.runExecutable(LOG, FileUtil2.getFirstExistChild(bin, "gem.bat", "gem.cmd").getAbsolutePath(), myWorkingDirectory, env, "install", "bundler");
          RunCommandsHelper.runExecutable(LOG, new File(bin, "bundle.bat").getAbsolutePath(), myWorkingDirectory, env, "install");
        } catch (Throwable e) {
          LOG.error("Failed to prepare environment: " + e.getMessage(), e);
        }
      } catch (RakeRunnerTestUtil.InterpreterNotFoundException e) {
        LOG.error("Failed to prepare environment: " + e.getMessage(), e);
      }
    }
  }