Skip to content

Instantly share code, notes, and snippets.

@ngw
Created April 20, 2017 09:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ngw/4d4fcfc51b8a9485c27a6ad7fc530cb4 to your computer and use it in GitHub Desktop.
Save ngw/4d4fcfc51b8a9485c27a6ad7fc530cb4 to your computer and use it in GitHub Desktop.
test "can put and pull several Parker.Element(s) with a priority" do
queue = PriorityQueue.new
element1 = %Element{uid: 'test1', priority: 10}
element2 = %Element{uid: 'test2', priority: 11}
element3 = %Element{uid: 'test3', priority: 9}
queue = PriorityQueue.put(queue, element1)
queue = PriorityQueue.put(queue, element2)
queue = PriorityQueue.put(queue, element3)
{queue, element3_out} = PriorityQueue.pull(queue)
{queue, element2_out} = PriorityQueue.pull(queue)
{_, element1_out} = PriorityQueue.pull(queue)
assert element2 == element3_out
assert element1 == element2_out
assert element3 == element1_out
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment