Further simplify mapset example with sorted?/1 function
This commit is contained in:
@@ -15,17 +15,22 @@ defmodule MapSets do
|
|||||||
assert MapSet.size(new_set) == ___
|
assert MapSet.size(new_set) == ___
|
||||||
end
|
end
|
||||||
|
|
||||||
koan "You cannot depend on my order" do
|
def sorted?(set) do
|
||||||
set = MapSet.new(1..33)
|
sorted = MapSet.to_list(set) |> Enum.sort
|
||||||
list = Enum.to_list(1..33)
|
set == sorted
|
||||||
set_list = MapSet.to_list(set)
|
end
|
||||||
|
|
||||||
assert (list == set_list) == ___
|
koan "You cannot depend on my order" do
|
||||||
assert (list == Enum.sort(set_list)) == ___
|
new_set = MapSet.new(1..33)
|
||||||
|
assert sorted?(new_set) == ___
|
||||||
|
|
||||||
|
# Note: The number "33" is actually special here. Erlang uses a different
|
||||||
|
# implementation for maps after 32 elements which does not maintain order.
|
||||||
|
# http://stackoverflow.com/a/40408469
|
||||||
|
|
||||||
|
# What do you think this answer to this assertion is?
|
||||||
|
# assert sorted?(@set) == ___
|
||||||
end
|
end
|
||||||
# Note: The number "33" is actually special here. Erlang uses a different
|
|
||||||
# implementation for maps after 32 elements which does not maintain order.
|
|
||||||
# http://stackoverflow.com/a/40408469
|
|
||||||
|
|
||||||
koan "Does this value exist in the map set?" do
|
koan "Does this value exist in the map set?" do
|
||||||
assert MapSet.member?(@set, 3) == ___
|
assert MapSet.member?(@set, 3) == ___
|
||||||
|
@@ -6,7 +6,7 @@ defmodule MapSetsTest do
|
|||||||
answers = [
|
answers = [
|
||||||
1,
|
1,
|
||||||
3,
|
3,
|
||||||
{:multiple, [false, true]},
|
false,
|
||||||
true,
|
true,
|
||||||
{:multiple, [true, false]},
|
{:multiple, [true, false]},
|
||||||
true,
|
true,
|
||||||
|
Reference in New Issue
Block a user