firefox/binary.js
function findFirefox() {
  if (foundBinary) {
    return foundBinary;
  }

  if (process.platform === 'darwin') {
    var osxExe =  '/Applications/Firefox.app/Contents/MacOS/firefox-bin';
    foundBinary = io.exists(osxExe).then(function(exists) {
      return exists ? osxExe : null;
    });
  } else if (process.platform === 'win32') {
    foundBinary = defaultWindowsLocation();
  } else {
    foundBinary = promise.fulfilled(io.findInPath('firefox'));
  }

  return foundBinary = foundBinary.then(function(found) {
    if (found) {
      return found;
    }
    throw Error('Could not locate Firefox on the current system');
  });
}
function findFirefox() {
  if (foundBinary) {
    return foundBinary;
  }

  if (process.platform === 'darwin') {
    var osxExe =  '/Applications/Firefox.app/Contents/MacOS/firefox-bin';
    foundBinary = io.exists(osxExe).then(function(exists) {
      return exists ? osxExe : null;
    });
  } else if (process.platform === 'win32') {
    foundBinary = defaultWindowsLocation();
  } else {
    foundBinary = promise.fulfilled(io.findInPath('firefox'));
  }

  return foundBinary = foundBinary.then(function(found) {
    if (found) {
      return found;
    }
    throw Error('Could not locate Firefox on the current system');
  });
}
function findFirefox ( ) { if ( foundBinary ) { return foundBinary ; } if ( process . platform === 'darwin' ) { var osxExe = '/Applications/Firefox.app/Contents/MacOS/firefox-bin' ; foundBinary = io . exists ( osxExe ) . then ( function ( exists ) { return exists ? osxExe : null ; } ) ; } else if ( process . platform === 'win32' ) { foundBinary = defaultWindowsLocation ( ) ; } else { foundBinary = promise . fulfilled ( io . findInPath ( 'firefox' ) ) ; } return foundBinary = foundBinary . then ( function ( found ) { if ( found ) { return found ; } throw Error ( 'Could not locate Firefox on the current system' ) ; } ) ; }
Locates the Firefox binary for the current system.
@return {!promise.Promise.<string>} A promise for the located binary. The
promise will be rejected if Firefox cannot be located.
Locates the Firefox binary for the current system .