class Expect
Public Class Methods
new(value, klass, self_klass, spec_statement, des_statement)
click to toggle source
# File lib/pidgin_spec/expect.rb, line 5 def initialize(value, klass, self_klass, spec_statement, des_statement) @klass = klass @value = value @des_statement = des_statement @spec_statement = spec_statement @self_klass = self_klass end
Public Instance Methods
go(matcher)
click to toggle source
# File lib/pidgin_spec/expect.rb, line 13 def go(matcher) if matcher.matches?(@value) @klass.pass_count += 1 else @klass.fail_count += 1 @klass.failure_messages << { description: "#{@des_statement} #{@spec_statement}", message: matcher.failure_message, failed_code: failed_code(caller_locations[0]), failed_code_path: "#{caller_locations[0].path.to_s}:#{caller_locations[0].lineno.to_s}" } @self_klass.passed = false end end
no_go(matcher)
click to toggle source
# File lib/pidgin_spec/expect.rb, line 29 def no_go(matcher) if !matcher.matches?(@value) @klass.pass_count += 1 else @klass.fail_count += 1 @klass.failure_messages << { description: "#{@des_statement} #{@spec_statement}", message: matcher.failure_message_when_negated, failed_code: failed_code(caller_locations[0]), failed_code_path: "#{caller_locations[0].path.to_s}:#{caller_locations[0].lineno.to_s}" } @self_klass.passed = false end end
Private Instance Methods
failed_code(caller_trace)
click to toggle source
# File lib/pidgin_spec/expect.rb, line 45 def failed_code(caller_trace) File.readlines(caller_trace.absolute_path)[caller_trace.lineno - 1].strip end