class Object

Public Instance Methods

_config() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 92
def _config
  @config ||= if File.exists?(_config_file)
    require 'yaml'
    YAML::load(ERB.new(File.read(_config_file) ).result).symbolize_keys
  else
    nil
  end
end
_config_file() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 101
def _config_file
  File.join('config', 'dns.yml')
end
_options() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 105
def _options
  @_options ||= {}
end
_pretty_print_options() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 131
def _pretty_print_options
  "\n  (#{_options.sort.map { |k, v| "#{k}:#{v.inspect}" }.join(', ')})\n"
end
_pretty_print_records() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 135
def _pretty_print_records
  "\n" + @records.map { |r| r.to_s }.join("\n")
end
_records() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 109
def _records
  @_records ||= begin
    config = _config || {}
    # Backwards compatible config option for rspec-dnsruby
    query_timeout = config[:timeouts] || RSpec.configuration.rspec_dns_connection_timeout
    Timeout::timeout(query_timeout + 0.2) do
      resolver =  Dnsruby::Resolver.new(config)
      resolver.query_timeout = query_timeout
      resolver.query(@dns, Dnsruby::Types.ANY)
    end
  rescue Exception => e
    if Dnsruby::NXDomain === e
      @exceptions << "Have not received any records"
    elsif Dnsruby::Refused === e && @refuse_request
      @refuse_request_received = true
    else
      @exceptions << e.message
    end
    Dnsruby::Message.new
  end
end
description() click to toggle source
# File lib/rspec-dnsruby/have_dns.rb, line 67
def description
  "have the correct dns entries with #{_options}"
end
method_missing(m, *args, &block) click to toggle source
Calls superclass method
# File lib/rspec-dnsruby/have_dns.rb, line 83
def method_missing(m, *args, &block)
  if m.to_s =~ /(and\_with|and|with)?\_(.*)$/
    _options[$2.to_sym] = args.first
    self
  else
    super
  end
end