class Nodeenv < Formula desc "Node.js virtual environment builder" homepage "https://github.com/ekalinin/nodeenv" url "https://github.com/ekalinin/nodeenv/archive/1.3.4.tar.gz" sha256 "5942ac26188ae682a031a9de31ca38fe8323326f4a5cf2149ac7253072543834" bottle :unneeded def install bin.install "nodeenv.py" => "nodeenv" end test do system bin/"nodeenv", "--node=0.10.40", "--prebuilt", "env-0.10.40-prebuilt" # Dropping into the virtualenv itself requires sourcing activate which # isn't easy to deal with. This ensures current Node installed & functional. ENV.prepend_path "PATH", testpath/"env-0.10.40-prebuilt/bin" (testpath/"test.js").write "console.log('hello');" assert_match "hello", shell_output("node test.js") assert_match "v0.10.40", shell_output("node -v") end end