Packages

Cafex is a pure Elixir implementation of Kafka client.

Current section

Files

Jump to
misha_cafex integration_test lock consul_test.exs
Raw

integration_test/lock/consul_test.exs

defmodule Cafex.Integration.Lock.ConsulTest do
use ExUnit.Case, async: true
@path "cafex_integration_test"
alias Cafex.Lock.Consul, as: Lock
test "consul lock" do
{:ok, lock1} = Lock.acquire(@path)
{:wait, lock2} = Lock.acquire(@path)
assert :ok = Lock.release(lock2)
{:wait, lock2} = Lock.acquire(@path)
assert :ok = Lock.release(lock1)
assert_receive {:lock, :ok, lock2}
assert :ok = Lock.release(lock2)
end
end