Sha256: 20f704bdbb5ba2891e8a5aedc7fa0d76208793ec1bcb6387d4ae88e70a49fcd0

Contents?: true

Size: 730 Bytes

Versions: 5

Compression:

Stored size: 730 Bytes

Contents

require 'fileutils'

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

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

    def create_reference_image
      copy_and_create_directory reference_path
    end

    def has_reference_image?
      File.exists? reference_path
    end

    def reference_path
      path.gsub 'screenshots_generated_this_run', 'reference_screenshots'
    end

    private

    def copy_and_create_directory dest
      file_manager.mkdir_p File.dirname dest
      file_manager.cp path, dest
    end

    def file_manager
      @file_manager ||= FileUtils
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
compaa-0.0.3 lib/compaa/generated_image.rb
compaa-0.0.2 lib/compaa/generated_image.rb
compaa-0.0.1.3 lib/compaa/generated_image.rb
compaa-0.0.1.2 lib/compaa/generated_image.rb
compaa-0.0.1.1 lib/compaa/generated_image.rb