class Chromedriver < Formula desc "Tool for automated testing of webapps across many browsers" homepage "https://sites.google.com/a/chromium.org/chromedriver/" url "https://chromedriver.storage.googleapis.com/2.33/chromedriver_mac64.zip" version "2.33" sha256 "064b243c4236380cc705f183e100d7a229815db7b143f6ad3eaae072a48cc827" bottle :unneeded def install bin.install "chromedriver" end plist_options :manual => "chromedriver" def plist; <<-EOS.undent Label homebrew.mxcl.chromedriver RunAtLoad KeepAlive ProgramArguments #{opt_bin}/chromedriver ServiceDescription Chrome Driver StandardErrorPath #{var}/log/chromedriver-error.log StandardOutPath #{var}/log/chromedriver-output.log EOS end test do driver = fork do exec bin/"chromedriver", "--port=9999", "--log-path=#{testpath}/cd.log" end sleep 5 Process.kill("TERM", driver) assert_predicate testpath/"cd.log", :exist? end end