class RSpecSystem::NodeSet

Factory class for NodeSet.

Public Class Methods

create() click to toggle source

Returns a NodeSet object.

@return [RSpecSystem::NodeSet::Base] returns an object based on the Base

abstract class.

@api private

# File lib/rspec-system/node_set.rb, line 9
def self.create
  provider = RSpec.configuration.rs_provider
  custom_prefabs = RSpec.configuration.rs_custom_prefabs
  setname = RSpec.configuration.rs_set || RSpec.configuration.rs_config['default_set']
  options = {:destroy => RSpec.configuration.rs_destroy}
  config = RSpec.configuration.rs_config['sets'][setname]

  begin
    require "rspec-system/node_set/#{provider.downcase}"
  rescue LoadError => e
    raise "Unsupported provider #{provider}: #{e}"
  end
  class_name = provider.split("_").map {|v| v.capitalize }.join
  const_get(class_name).new(setname, config, custom_prefabs, options)
end