class CargoCompletion < Formula desc "Bash and Zsh completion for Cargo" homepage "https://github.com/rust-lang/cargo" url "https://github.com/rust-lang/cargo/archive/0.18.0.tar.gz" sha256 "19b5c142c194fc2f940d93b4679850980ed077db0ff7c558122c7ef865e24983" version_scheme 1 head "https://github.com/rust-lang/cargo.git" bottle :unneeded conflicts_with "rust", :because => "both install shell completion for cargo" def install bash_completion.install "src/etc/cargo.bashcomp.sh" => "cargo" zsh_completion.install "src/etc/_cargo" end test do # we need to define a dummy 'cargo' command to force the script to define # the completion function assert_match "-F _cargo", shell_output("cargo() { true;} && source #{bash_completion}/cargo && complete -p cargo") end end