Sha256: 18de12a5c1f33047f7340f57de0f3811328d3f4df35eeaf325de57079ad0c8c9

Contents?: true

Size: 841 Bytes

Versions: 8

Compression:

Stored size: 841 Bytes

Contents

require 'fileutils'

module Compaa
  class DifferenceImage < Struct.new(:path)
    attr_writer :file_manager

    def self.all
      Dir.glob(File.join %w[artifacts differences_in_screenshots_this_run ** *.gif]).map { |path|
        new path
      }
    end

    def create_reference_image
      file_manager.mkdir_p File.dirname reference_path
      file_manager.cp generated_path, reference_path
      file_manager.rm path
    end

    def reference_path
      path.gsub(
        'differences_in_screenshots_this_run', 'reference_screenshots'
      ).gsub('_difference.gif', '')
    end

    def generated_path
      path.gsub(
        'differences_in_screenshots_this_run', 'screenshots_generated_this_run'
      ).gsub('_difference.gif', '')
    end

    private

    def file_manager
      @file_manager ||= FileUtils
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
compaa-0.2.0 lib/compaa/difference_image.rb
compaa-0.1.1 lib/compaa/difference_image.rb
compaa-0.0.4 lib/compaa/difference_image.rb
compaa-0.0.3 lib/compaa/difference_image.rb
compaa-0.0.2 lib/compaa/difference_image.rb
compaa-0.0.1.3 lib/compaa/difference_image.rb
compaa-0.0.1.2 lib/compaa/difference_image.rb
compaa-0.0.1.1 lib/compaa/difference_image.rb