class Cake < Formula desc "'C# Make' is a build automation system with a C# DSL." homepage "http://cakebuild.net/" url "https://github.com/cake-build/cake/releases/download/v0.8.0/Cake-bin-v0.8.0.zip" sha256 "dd0141623bbce8d70855a345507ad2c37b27edf1d8f6dba5e4c4690d9b2544d0" bottle :unneeded depends_on "mono" => :recommended def install libexec.install Dir["*.dll"] libexec.install Dir["*.exe"] libexec.install Dir["*.xml"] bin.mkpath (bin/"cake").write <<-EOS.undent #!/bin/bash mono #{libexec}/Cake.exe "$@" EOS end test do test_str = "Hello Homebrew" (testpath/"build.cake").write <<-EOS.undent var target = Argument ("target", "info"); Task("info").Does(() => { Information ("Hello Homebrew"); }); RunTarget ("info"); EOS assert_match test_str, shell_output("#{bin}/cake ./build.cake").strip end end