Sha256: fac45cf3ae342bf85eb80049860663a483e63271bbe8f7cd414f253edcb0df25

Contents?: true

Size: 767 Bytes

Versions: 1

Compression:

Stored size: 767 Bytes

Contents

require 'yaml'
require 'janus/test'

module Janus
  class Configuration
    def self.load(*args)
      options = load_configuration_file
      options = args.reduce(options) do |all, opts|
        all.merge(opts)
      end

      Janus::Configuration.new(options)
    end

    def initialize(options)
      @options = options
    end

    def username
      @options['username']
    end

    def access_key
      @options['access_key']
    end

    def tests
      @options['tests'].map do |test|
        Janus::Test.new(test)
      end
    end

    private

    def self.load_configuration_file
      if File.exists?('Janusfile')
        YAML.load(IO.read('Janusfile'))
      else
        raise 'Could not find Janus configuration file!'
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
janus-cli-0.1.0 lib/janus/configuration.rb