exercism/ruby/linked-list/linked_list_test.rb

74 lines
1.4 KiB
Ruby
Raw Normal View History

2018-12-05 12:56:25 -05:00
require 'minitest/autorun'
require_relative 'linked_list'
class DequeTest < Minitest::Test
def test_push_pop
# skip
deque = Deque.new
deque.push(10)
deque.push(20)
assert_equal 20, deque.pop
assert_equal 10, deque.pop
end
def test_push_shift
# skip
deque = Deque.new
deque.push(10)
deque.push(20)
assert_equal 10, deque.shift
assert_equal 20, deque.shift
end
def test_unshift_shift
# skip
deque = Deque.new
deque.unshift(10)
deque.unshift(20)
assert_equal 20, deque.shift
assert_equal 10, deque.shift
end
def test_unshift_pop
# skip
deque = Deque.new
deque.unshift(10)
deque.unshift(20)
assert_equal 10, deque.pop
assert_equal 20, deque.pop
end
def test_example
# skip
deque = Deque.new
deque.push(10)
deque.push(20)
assert_equal 20, deque.pop
deque.push(30)
assert_equal 10, deque.shift
deque.unshift(40)
deque.push(50)
assert_equal 40, deque.shift
assert_equal 50, deque.pop
assert_equal 30, deque.shift
end
def test_pop_to_empty
# skip
deque = Deque.new
deque.push(10)
assert_equal 10, deque.pop
deque.push(20)
assert_equal 20, deque.shift
end
def test_shift_to_empty
# skip
deque = Deque.new
deque.unshift(10)
assert_equal 10, deque.shift
deque.unshift(20)
assert_equal 20, deque.pop
end
end