jackett 0.22.1382
[Homebrew/homebrew-core.git] / Formula / b / bob.rb
blob8d48bc7b884b63306586ac5f602f25936b0ea4bd
1 class Bob < Formula
2   desc "Version manager for neovim"
3   homepage "https://github.com/MordechaiHadad/bob"
4   url "https://github.com/MordechaiHadad/bob/archive/refs/tags/v4.0.3.tar.gz"
5   sha256 "cb0b084ca0454fc17c387d9662b420764b2aa1152dfe035238b1d08bb7ab34f1"
6   license "MIT"
8   bottle do
9     sha256 cellar: :any_skip_relocation, arm64_sequoia: "197aedb1360b5288d62570a28d4ab2799db3b23c5a66b7825d70b006a4eab70c"
10     sha256 cellar: :any_skip_relocation, arm64_sonoma:  "abb9e82fa156473bf7477165601ce06461d34131dcedd97456341b8f24bec3e8"
11     sha256 cellar: :any_skip_relocation, arm64_ventura: "59d937fb5ca0b8f8e360a4685be621be76f843583bcb1711b3cf6b79007b1b6f"
12     sha256 cellar: :any_skip_relocation, sonoma:        "37a0ae66998c2dcec0a690d1a3c56e2ee3c5ec6ebe4345a28a43858e80910d25"
13     sha256 cellar: :any_skip_relocation, ventura:       "ec91b851216fb3b9489a1f58279f4290662bb7cb6ba2b74c49305b9ab61ba1ab"
14     sha256 cellar: :any_skip_relocation, x86_64_linux:  "771d6922ebbff58d6c998d5c5217816d8f439a9c8462a4ce32886e7c183d0cce"
15   end
17   depends_on "rust" => :build
19   def install
20     system "cargo", "install", *std_cargo_args
21     generate_completions_from_executable(bin/"bob", "complete")
22   end
24   test do
25     config_file = testpath/"config.json"
26     config_file.write <<~JSON
27       {
28         "downloads_location": "#{testpath}/.local/share/bob",
29         "installation_location": "#{testpath}/.local/share/bob/nvim-bin"
30       }
31     JSON
33     ENV["BOB_CONFIG"] = config_file
34     mkdir_p "#{testpath}/.local/share/bob"
35     mkdir_p "#{testpath}/.local/share/nvim-bin"
37     system bin/"bob", "install", "v0.9.0"
38     assert_match "v0.9.0", shell_output("#{bin}/bob list")
39     assert_predicate testpath/".local/share/bob/v0.9.0", :exist?
40     system bin/"bob", "erase"
41   end
42 end