Skip to content

Commit

Permalink
Make Registry.send work when value part is present (#11742)
Browse files Browse the repository at this point in the history
Fix #11740.
  • Loading branch information
entertainyou authored and josevalim committed Apr 6, 2022
1 parent e0c8b8a commit d52f533
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
4 changes: 4 additions & 0 deletions lib/elixir/lib/registry.ex
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,10 @@ defmodule Registry do
end
end

def send({registry, key, _value}, msg) do
Registry.send({registry, key}, msg)
end

@doc false
def unregister_name({registry, key}), do: unregister(registry, key)
def unregister_name({registry, key, _value}), do: unregister(registry, key)
Expand Down
14 changes: 14 additions & 0 deletions lib/elixir/test/elixir/registry_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -896,6 +896,20 @@ defmodule RegistryTest do
assert {%RuntimeError{message: "some error"}, _stacktrace} = error
end

test "send works", %{registry: registry} do
name = {registry, "self"}
Registry.register_name(name, self())
GenServer.cast({:via, Registry, name}, :message)
assert_received {:"$gen_cast", :message}
end

test "send works with value", %{registry: registry} do
name = {registry, "self", "value"}
Registry.register_name(name, self())
GenServer.cast({:via, Registry, name}, :message)
assert_received {:"$gen_cast", :message}
end

defp register_task(registry, key, value) do
parent = self()

Expand Down

0 comments on commit d52f533

Please sign in to comment.