class DotDiff::Comparible::Base
Attributes
element_meta[R]
snapshot[R]
Public Class Methods
new(snapshot, element_meta)
click to toggle source
# File lib/dotdiff/comparible/base.rb, line 6 def initialize(snapshot, element_meta) @snapshot = snapshot @element_meta = element_meta end
run(snapshot, element_meta)
click to toggle source
# File lib/dotdiff/comparible/base.rb, line 11 def self.run(snapshot, element_meta) new(snapshot, element_meta).run end
Private Instance Methods
calculate_result(diff_pixels)
click to toggle source
# File lib/dotdiff/comparible/base.rb, line 29 def calculate_result(diff_pixels) calc = DotDiff::ThresholdCalculator.new( DotDiff.pixel_threshold, img_container.total_pixels, diff_pixels ) [calc.under_threshold?, calc.message] end
compare(compare_to_image)
click to toggle source
# File lib/dotdiff/comparible/base.rb, line 19 def compare(compare_to_image) return [false, img_container.dimensions_mismatch_msg] unless img_container.both_images_same_dimensions? cmd = CommandWrapper.new cmd.run(snapshot.basefile, new_image_path, snapshot.diff_file) return [cmd.passed?, cmd.message] if cmd.failed? calculate_result(cmd.pixels) end
img_container()
click to toggle source
# File lib/dotdiff/comparible/base.rb, line 39 def img_container @img_container ||= DotDiff::Image::Container.new( snapshot.basefile, new_image_path ) end