1class BeEmptyMatcher 2 def matches?(actual) 3 @actual = actual 4 @actual.empty? 5 end 6 7 def failure_message 8 ["Expected #{@actual.inspect}", "to be empty"] 9 end 10 11 def negative_failure_message 12 ["Expected #{@actual.inspect}", "not to be empty"] 13 end 14end 15 16module MSpecMatchers 17 private def be_empty 18 BeEmptyMatcher.new 19 end 20end 21