Sha256: c6c16d50999109b11e99e10a85f20477edb86ce131f59f98bf2b005e8ef95c78

Contents?: true

Size: 1.2 KB

Versions: 14

Compression:

Stored size: 1.2 KB

Contents

module ProxyPacRb
  module Rspec
    # Helpers for proxy.pac tests
    module Helpers
      def proxy_pac
        file = ProxyPacRb::ProxyPacFile.new(source: _proxy_pac_source)

        _proxy_pac_loader.load(file)
        _proxy_pac_linter.lint(file)
        _proxy_pac_parser.parse(file)

        file
      end

      def time
        '1970-01-01 00:00:00'
      end

      def client_ip
        '127.0.0.1'
      end

      def root_path
        @root_path ||= Dir.getwd
      end

      private

      def _proxy_pac_source
        url_host =  begin
                      Addressable::URI.parse(subject).host
                    rescue
                      nil
                    end

        if subject.nil? || /FindProxyForURL/ === subject || url_host
          subject
        else
          File.join(root_path, subject)
        end
      end

      def _environment
        Environment.new(time: time, client_ip: client_ip)
      end

      def _proxy_pac_parser
        ProxyPacRb::ProxyPacParser.new(environment: _environment)
      end

      def _proxy_pac_loader
        ProxyPacRb::ProxyPacLoader.new
      end

      def _proxy_pac_linter
        ProxyPacRb::ProxyPacLinter.new
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
proxy_pac_rb-0.8.2 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.8.1 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.8.0 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.7.0 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.9 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.8 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.7 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.5 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.4 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.3 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.2 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.1 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.6.0 lib/proxy_pac_rb/rspec/helpers.rb
proxy_pac_rb-0.5.10 lib/proxy_pac_rb/rspec/helpers.rb