Skip to content

Commit d52f533

Browse files
entertainyoujosevalim
authored andcommitted
Make Registry.send work when value part is present (#11742)
Fix #11740.
1 parent e0c8b8a commit d52f533

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

lib/elixir/lib/registry.ex

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,10 @@ defmodule Registry do
260260
end
261261
end
262262

263+
def send({registry, key, _value}, msg) do
264+
Registry.send({registry, key}, msg)
265+
end
266+
263267
@doc false
264268
def unregister_name({registry, key}), do: unregister(registry, key)
265269
def unregister_name({registry, key, _value}), do: unregister(registry, key)

lib/elixir/test/elixir/registry_test.exs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -896,6 +896,20 @@ defmodule RegistryTest do
896896
assert {%RuntimeError{message: "some error"}, _stacktrace} = error
897897
end
898898

899+
test "send works", %{registry: registry} do
900+
name = {registry, "self"}
901+
Registry.register_name(name, self())
902+
GenServer.cast({:via, Registry, name}, :message)
903+
assert_received {:"$gen_cast", :message}
904+
end
905+
906+
test "send works with value", %{registry: registry} do
907+
name = {registry, "self", "value"}
908+
Registry.register_name(name, self())
909+
GenServer.cast({:via, Registry, name}, :message)
910+
assert_received {:"$gen_cast", :message}
911+
end
912+
899913
defp register_task(registry, key, value) do
900914
parent = self()
901915

0 commit comments

Comments
 (0)