Sha256: 900af1e2d17c772dd72beeaae5f9590cd1a5a79b7890482dc2712e065405f0ec

Contents?: true

Size: 961 Bytes

Versions: 1

Compression:

Stored size: 961 Bytes

Contents

require 'yaml'
require 'singleton'
require 'active_support/core_ext/hash'

class AcceptanceTestBuilder
  include Singleton

  def create project_root, config_name, screenshot_dir
    Capybara.default_driver = :selenium

    ENV['DRIVER'] = 'selenium'

    Capybara.configure do |config|
      config.match = :first

      config.ignore_hidden_elements = false
    end

    project_root = File.expand_path(project_root.to_s)

    config = HashWithIndifferentAccess.new(YAML.load_file(config_name))

    system "mkdir -p #{screenshot_dir}"

    acceptance_test = AcceptanceTest.new project_root, config, screenshot_dir

    ENV['ASSET_HOST'] = acceptance_test.app_host

    puts "Application URL   : #{config[:webapp_url]}"
    puts "Selenium URL      : #{config[:selenium_url]}" if config[:selenium_url]
    puts "ENV['DRIVER']     : #{ENV['DRIVER']}" if ENV['DRIVER']
    puts "Default Wait Time : #{Capybara.default_wait_time}"

    acceptance_test
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
acceptance_test-1.3.1 lib/acceptance_test/acceptance_test_builder.rb