87211f260d
This gets us the ability to use XPath consistently, as well as Hpricot's forgiving parser, when using JRuby
44 lines
1.1 KiB
Ruby
44 lines
1.1 KiB
Ruby
require "rubygems"
|
|
require "spec"
|
|
|
|
# gem install redgreen for colored test output
|
|
begin require "redgreen" unless ENV['TM_CURRENT_LINE']; rescue LoadError; end
|
|
|
|
webrat_path = File.expand_path(File.dirname(__FILE__) + "/../lib/")
|
|
$LOAD_PATH.unshift(webrat_path) unless $LOAD_PATH.include?(webrat_path)
|
|
|
|
require "webrat"
|
|
require File.expand_path(File.dirname(__FILE__) + "/fakes/test_session")
|
|
|
|
require "merb-core"
|
|
|
|
Webrat.configure do |config|
|
|
config.parse_with_nokogiri = false
|
|
end
|
|
|
|
Spec::Runner.configure do |config|
|
|
include Webrat::Methods
|
|
|
|
def with_html(html)
|
|
raise "This doesn't look like HTML. Wrap it in a <html> tag" unless html =~ /^\s*<[^Hh>]*html/i
|
|
webrat_session.response_body = html
|
|
end
|
|
|
|
def with_xml(xml)
|
|
raise "This looks like HTML" if xml =~ /^\s*<[^Hh>]*html/i
|
|
webrat_session.response_body = xml
|
|
end
|
|
|
|
end
|
|
|
|
module Webrat
|
|
@@previous_config = nil
|
|
|
|
def self.cache_config_for_test
|
|
@@previous_config = Webrat.configuration.clone
|
|
end
|
|
|
|
def self.reset_for_test
|
|
@@configuration = @@previous_config if @@previous_config
|
|
end
|
|
end |