lib/models/glimmer/calculator/presenter.rb in glimmer-cs-calculator-1.0.0 vs lib/models/glimmer/calculator/presenter.rb in glimmer-cs-calculator-1.0.1

- old
+ new

@@ -1,18 +1,26 @@ require 'models/glimmer/calculator/command' module Glimmer class Calculator class Presenter + FORMATTER = { + nil => '0', + 'NaN' => 'Not a number' + } + attr_accessor :result def initialize self.result = '0' end - + def press(button) command = Command.for(button) - self.result = command.result if command + if command + new_result = command.result + self.result = FORMATTER[new_result] || new_result + end end end end end