class IntervalSkipListSpecHelper::ContainMarkers
def initialize(list, expected_markers)
def initialize(list, expected_markers) @list = list @expected_markers = expected_markers end
def matches?(target_range)
def matches?(target_range) @target_range = target_range @target_range.each do |i| markers = @list.containing(i) @expected_markers.each do |expected_marker| unless markers.include?(expected_marker) @failure_message = "Expected #{expected_marker.inspect} to contain #{i}, but it doesn't. #{i} is contained by: #{markers.inspect}." return false end end markers.each do |marker| unless @expected_markers.include?(marker) @failure_message = "Did not expect #{marker.inspect} to contain #{i}. Only expected #{@expected_markers.inspect}." return false end end end true end