32 lines
988 B
Ruby
32 lines
988 B
Ruby
|
class SignalCli < Formula
|
||
|
desc "CLI and dbus interface for WhisperSystems/libsignal-service-java"
|
||
|
homepage "https://github.com/AsamK/signal-cli"
|
||
|
url "https://github.com/AsamK/signal-cli/releases/download/v0.6.2/signal-cli-0.6.2.tar.gz"
|
||
|
sha256 "d917507211b3419e271674df7f03c8189921e2e78a389479a612847ddc8f1614"
|
||
|
|
||
|
bottle :unneeded
|
||
|
|
||
|
depends_on :java => "1.7+"
|
||
|
|
||
|
def install
|
||
|
libexec.install Dir["lib", "bin"]
|
||
|
(bin/"signal-cli").write_env_script libexec/"bin/signal-cli", Language::Java.java_home_env("1.7+")
|
||
|
end
|
||
|
|
||
|
test do
|
||
|
# test 1: checks class loading is working and version is correct
|
||
|
output = shell_output("#{bin}/signal-cli --version")
|
||
|
assert_match "signal-cli #{version}", output
|
||
|
|
||
|
# test 2: ensure crypto is working
|
||
|
begin
|
||
|
io = IO.popen("#{bin}/signal-cli link", :err => [:child, :out])
|
||
|
sleep 8
|
||
|
ensure
|
||
|
Process.kill("SIGINT", io.pid)
|
||
|
Process.wait(io.pid)
|
||
|
end
|
||
|
assert_match "tsdevice:/?uuid=", io.read
|
||
|
end
|
||
|
end
|