class Mutest::Matcher::Method::Singleton::Evaluator
Singleton
method evaluator
Constants
- NAME_INDEX
- RECEIVER_INDEX
- RECEIVER_WARNING
- SUBJECT_CLASS
Private Instance Methods
line?(node)
click to toggle source
Test
for line match
@param [Parser::AST::Node] node
@return [Boolean]
# File lib/mutest/matcher/method/singleton.rb, line 39 def line?(node) node .location .line .equal?(source_line) end
match?(node)
click to toggle source
Test
for node match
@param [Parser::AST::Node] node
@return [Boolean]
# File lib/mutest/matcher/method/singleton.rb, line 30 def match?(node) n_defs?(node) && line?(node) && name?(node) && receiver?(node) end
name?(node)
click to toggle source
Test
for name match
@param [Parser::AST::Node] node
@return [Boolean]
# File lib/mutest/matcher/method/singleton.rb, line 51 def name?(node) node.children.fetch(NAME_INDEX).equal?(method_name) end
receiver?(node)
click to toggle source
Test
for receiver match
@param [Parser::AST::Node] node
@return [Boolean]
# File lib/mutest/matcher/method/singleton.rb, line 60 def receiver?(node) receiver = node.children.fetch(RECEIVER_INDEX) case receiver.type when :self true when :const receiver_name?(receiver) else env.warn(RECEIVER_WARNING % receiver.type) nil end end
receiver_name?(node)
click to toggle source
Test
if receiver name matches context
@param [Parser::AST::Node] node
@return [Boolean]
# File lib/mutest/matcher/method/singleton.rb, line 78 def receiver_name?(node) name = node.children.fetch(NAME_INDEX) name.to_s.eql?(context.unqualified_name) end