This is my main code. I am using rspec
require_relative "rpn_calculator"
describe RPNCalculator do
let(:calculator) {RPNCalculator.new}
it "adds two numbers" do
calculator.push(1)
calculator.push(3)
calculator.plus
expect(calculator.value).to eq 4
end
And this is my code in rpn_calculator
class RPNCalculator
@arr=[]
@ans=0
def push(val)
@arr.push(val)
end
def plus
while @arr.size>=1 do
@ans=@[email protected]
end
end
def value
return @ans
end
end
And this is the error I am getting
RPNCalculator adds two numbers
Failure/Error: calculator.push(1)
NoMethodError:
undefined method push' for nil:NilClass
# ./rpn_calculator.rb:5:inpush'
# ./spec.rb:7:in `block (2 levels) in '
But I think Push is a method for arrays