Rearrange existing koans to paint a clearer picture

This commit is contained in:
Jay Hayes
2016-05-03 17:47:58 -05:00
parent 322799a655
commit 1f24de98f4
2 changed files with 17 additions and 17 deletions

View File

@@ -21,6 +21,21 @@ defmodule Processes do
assert Process.alive?(pid) == ___
end
koan "You can kill processes other than yourself" do
pid = spawn(fn -> receive do end end)
assert Process.alive?(pid) == ___
Process.exit(pid, :kill)
assert Process.alive?(pid) == ___
end
koan "However, trying to exit normally has no effect" do
pid = spawn(fn -> receive do end end)
Process.exit(pid, :normal)
assert Process.alive?(pid) == ___
end
koan "Processes can send and receive messages; it's like a mailbox!" do
send self, "hola!"
@@ -53,14 +68,6 @@ defmodule Processes do
assert_receive ___
end
koan "You can also terminate processes other than yourself" do
pid = spawn(fn -> receive do end end)
assert Process.alive?(pid) == ___
Process.exit(pid, :kill)
assert Process.alive?(pid) == ___
end
koan "Trapping will allow you to react to someone terminating the process" do
parent = self
pid = spawn(fn ->
@@ -80,13 +87,6 @@ defmodule Processes do
assert_receive ___
end
koan "Trying to quit normally has no effect" do
pid = spawn(fn -> receive do end end)
Process.exit(pid, :normal)
assert Process.alive?(pid) == ___
end
koan "Parent processes can trap exits for children they are linked to" do
Process.flag(:trap_exit, true)
spawn_link(fn -> Process.exit(self, :normal) end)