class Crowdin < Formula desc "Command-line tool that allows to manage your resources with crowdin.com" homepage "https://support.crowdin.com/cli-tool/" url "https://github.com/crowdin/crowdin-cli/releases/download/3.2.1/crowdin-cli.zip" sha256 "953e8714ca114b21eabd8f588d4b1c9e8ac1d1df3621176fc08ce611200f3108" license "MIT" revision 1 livecheck do url "https://github.com/crowdin/crowdin-cli.git" regex(/^v?(\d+(?:\.\d+)+)$/i) end bottle :unneeded depends_on "openjdk" def install libexec.install "crowdin-cli.jar" bin.write_jar_script libexec/"crowdin-cli.jar", "crowdin" end test do (testpath/"crowdin.yml").write <<~EOS "project_id": "12" "api_token": "54e01--your-personal-token--2724a" "base_path": "." "base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com "preserve_hierarchy": true "files": [ { "source" : "/t1/**/*", "translation" : "/%two_letters_code%/%original_file_name%" } ] EOS assert "Your configuration file looks good", shell_output("#{bin}/crowdin lint") assert "Failed to authorize in Crowdin", shell_output("#{bin}/crowdin upload sources --config #{testpath}/crowdin.yml", 1) end end