2024-03-17 23:28:50 +09:00
|
|
|
require 'minitest/autorun'
|
|
|
|
require_relative 'main'
|
|
|
|
|
2024-03-24 22:20:46 +09:00
|
|
|
class GateTest < Minitest::Test
|
2024-03-25 22:14:46 +09:00
|
|
|
def setup
|
|
|
|
@umeda = Gate.new(:umeda)
|
|
|
|
@juso = Gate.new(:juso)
|
|
|
|
@mikuni = Gate.new(:mikuni)
|
|
|
|
end
|
|
|
|
def test_umeda_to_juso
|
2024-03-24 22:20:46 +09:00
|
|
|
ticket = Ticket.new(160)
|
2024-03-25 22:14:46 +09:00
|
|
|
@umeda.enter(ticket)
|
|
|
|
assert @juso.exit(ticket)
|
2024-03-24 22:20:46 +09:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_umeda_to_mikuni_when_fare_is_not_enough
|
2024-03-25 22:14:46 +09:00
|
|
|
ticket = Ticket.new(190)
|
|
|
|
@umeda.enter(ticket)
|
|
|
|
assert @mikuni.exit(ticket)
|
|
|
|
end
|
|
|
|
def test_juso_to_mikuni
|
2024-03-24 22:20:46 +09:00
|
|
|
ticket = Ticket.new(160)
|
2024-03-25 22:14:46 +09:00
|
|
|
@juso.enter(ticket)
|
|
|
|
assert @mikuni.exit(ticket)
|
2024-03-17 23:28:50 +09:00
|
|
|
end
|
|
|
|
end
|