module Goggles

Constants

VERSION

Public Instance Methods

configure() { |conf| ... } click to toggle source

Yields the global configuration object to a block.

@yield [Goggles::Configuration] global configuration @return [Goggles::Configuration] global configuration

# File lib/goggles.rb, line 19
def configure &block
  configuration.tap { |conf| yield conf }
end
each(*instance, &block) click to toggle source

Creates an Iteration object for each combination of browser and width derived from global

configuration and given arguments.

@param instance [Array<String,Fixnum,Symbol>, String, Fixnum, Symbol] configuration extension @return [Goggles::Comparison] @see Goggles::Iteration

# File lib/goggles.rb, line 31
def each *instance, &block
  validate_directory_setting
  args = instance.flatten.map(&:to_s)
  
  sizes = configuration.sizes + args.grep(/\d+/).map(&:to_i)
  browsers = configuration.browsers + args.grep(/[^\d+]/).map(&:to_sym)
  
  browsers.product(sizes).each do |browser, size|
    Iteration.new browser, size, configuration, &block 
  end
  
  Comparison.new(configuration).tap { |comparison| comparison.make! }
end

Private Instance Methods

configuration() click to toggle source

@api private

# File lib/goggles.rb, line 50
def configuration
  @configuration ||= Configuration.new
end
validate_directory_setting() click to toggle source

@api private

# File lib/goggles.rb, line 57
def validate_directory_setting
  message = "Expected configured directory setting, got: #{configuration.directory}"
  raise EmptyDirectoryError, message if configuration.directory.nil?
  raise EmptyDirectoryError, message if configuration.directory.empty?
end