relevance-tarantula 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG ADDED
@@ -0,0 +1,2 @@
1
+ v0.0.5 Make sure we don't include Relevance::Tarantula into Object - will cause issues Rails dependencies and is a bad idea in general; update Rakefile for dev dependencies; another small clean up tasks
2
+ v0.0.1 Tarantula becomes a gem. (Aaron Bedra)
data/Rakefile CHANGED
@@ -6,8 +6,8 @@ require 'rubygems'
6
6
  begin
7
7
  gem 'technicalpickles-echoe'
8
8
  rescue LoadError => e
9
- puts "couldn't find the correct version of echoe - please install from forked version on github: http://github.com/technicalpickles/echoe/"
10
- puts "sudo gem install technicalpickles-echoe -s http://gems.github.com"
9
+ puts "Couldn't find the correct version of echoe - please install from forked version on github: http://github.com/technicalpickles/echoe/ ->"
10
+ puts "sudo gem install technicalpickles-echoe --source http://gems.github.com"
11
11
  end
12
12
 
13
13
  require 'echoe'
@@ -27,7 +27,7 @@ echoe = Echoe.new('tarantula') do |p|
27
27
  p.test_pattern = 'test/**/*_test.rb'
28
28
  p.manifest_name = 'manifest.txt'
29
29
  p.dependencies = ['htmlentities', 'hpricot', 'facets >=2.4.3']
30
- p.development_dependencies = ['ruby-debug', 'test-spec']
30
+ p.development_dependencies = ['ruby-debug', 'test-spec', 'mocha']
31
31
  end
32
32
 
33
33
  desc 'Default: run unit tests.'
@@ -21,7 +21,7 @@ module Relevance; end
21
21
  module Relevance; module CoreExtensions; end; end
22
22
  module Relevance
23
23
  module Tarantula
24
- VERSION = "0.0.3"
24
+ VERSION = "0.0.5"
25
25
 
26
26
  def tarantula_home
27
27
  File.expand_path(File.join(File.dirname(__FILE__), "../.."))
@@ -8,7 +8,7 @@ class Relevance::Tarantula::Attack
8
8
  end
9
9
  end
10
10
  def ==(other)
11
- Attack === other && HASHABLE_ATTRS.all? { |attr| send(attr) == other.send(attr)}
11
+ Relevance::Tarantula::Attack === other && HASHABLE_ATTRS.all? { |attr| send(attr) == other.send(attr)}
12
12
  end
13
13
  end
14
14
 
data/rails/init.rb ADDED
@@ -0,0 +1 @@
1
+ load File.expand_path(File.join(File.dirname(__FILE__) + ".." "tasks", "tarantula.rake"))
data/tarantula.gemspec CHANGED
@@ -1,14 +1,14 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = %q{tarantula}
3
- s.version = "0.0.3"
3
+ s.version = "0.0.5"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new("= 1.2") if s.respond_to? :required_rubygems_version=
6
6
  s.authors = ["Relevance"]
7
- s.date = %q{2008-09-10}
7
+ s.date = %q{2008-09-26}
8
8
  s.description = %q{A big hairy fuzzy spider that crawls your site, wreaking havoc}
9
9
  s.email = %q{opensource@thinkrelevance.com}
10
- s.extra_rdoc_files = ["MIT-LICENSE", "README.rdoc", "lib/relevance/core_extensions/ellipsize.rb", "lib/relevance/core_extensions/file.rb", "lib/relevance/core_extensions/response.rb", "lib/relevance/core_extensions/test_case.rb", "lib/relevance/tarantula/attack.rb", "lib/relevance/tarantula/attack_form_submission.rb", "lib/relevance/tarantula/attack_handler.rb", "lib/relevance/tarantula/crawler.rb", "lib/relevance/tarantula/detail.html.erb", "lib/relevance/tarantula/form.rb", "lib/relevance/tarantula/form_submission.rb", "lib/relevance/tarantula/html_document_handler.rb", "lib/relevance/tarantula/html_report_helper.rb", "lib/relevance/tarantula/html_reporter.rb", "lib/relevance/tarantula/index.html.erb", "lib/relevance/tarantula/invalid_html_handler.rb", "lib/relevance/tarantula/io_reporter.rb", "lib/relevance/tarantula/link.rb", "lib/relevance/tarantula/log_grabber.rb", "lib/relevance/tarantula/rails_integration_proxy.rb", "lib/relevance/tarantula/recording.rb", "lib/relevance/tarantula/response.rb", "lib/relevance/tarantula/result.rb", "lib/relevance/tarantula/test_report.html.erb", "lib/relevance/tarantula/tidy_handler.rb", "lib/relevance/tarantula/transform.rb", "lib/relevance/tarantula.rb", "vendor/xss-shield/MIT-LICENSE"]
11
- s.files = ["MIT-LICENSE", "README.rdoc", "Rakefile", "init.rb", "install.rb", "laf/images/background.jpg", "laf/images/relevance-os-logo.gif", "laf/images/tab.png", "laf/images/table-sort.gif", "laf/images/tarantula-sprites.png", "laf/javascripts/jquery-1.2.3.js", "laf/javascripts/jquery-ui-tabs.js", "laf/javascripts/jquery.tablesorter.js", "laf/javascripts/tarantula.js", "laf/stylesheets/tarantula.css", "laf/stylesheets/ui.tabs.css", "lib/relevance/core_extensions/ellipsize.rb", "lib/relevance/core_extensions/file.rb", "lib/relevance/core_extensions/response.rb", "lib/relevance/core_extensions/test_case.rb", "lib/relevance/tarantula/attack.rb", "lib/relevance/tarantula/attack_form_submission.rb", "lib/relevance/tarantula/attack_handler.rb", "lib/relevance/tarantula/crawler.rb", "lib/relevance/tarantula/detail.html.erb", "lib/relevance/tarantula/form.rb", "lib/relevance/tarantula/form_submission.rb", "lib/relevance/tarantula/html_document_handler.rb", "lib/relevance/tarantula/html_report_helper.rb", "lib/relevance/tarantula/html_reporter.rb", "lib/relevance/tarantula/index.html.erb", "lib/relevance/tarantula/invalid_html_handler.rb", "lib/relevance/tarantula/io_reporter.rb", "lib/relevance/tarantula/link.rb", "lib/relevance/tarantula/log_grabber.rb", "lib/relevance/tarantula/rails_integration_proxy.rb", "lib/relevance/tarantula/recording.rb", "lib/relevance/tarantula/response.rb", "lib/relevance/tarantula/result.rb", "lib/relevance/tarantula/test_report.html.erb", "lib/relevance/tarantula/tidy_handler.rb", "lib/relevance/tarantula/transform.rb", "lib/relevance/tarantula.rb", "tasks/tarantula_tasks.rake", "template/tarantula_test.rb", "test/relevance/core_extensions/ellipsize_test.rb", "test/relevance/core_extensions/file_test.rb", "test/relevance/core_extensions/response_test.rb", "test/relevance/core_extensions/test_case_test.rb", "test/relevance/tarantula/attack_form_submission_test.rb", "test/relevance/tarantula/attack_handler_test.rb", "test/relevance/tarantula/crawler_test.rb", "test/relevance/tarantula/form_submission_test.rb", "test/relevance/tarantula/form_test.rb", "test/relevance/tarantula/html_document_handler_test.rb", "test/relevance/tarantula/html_report_helper_test.rb", "test/relevance/tarantula/html_reporter_test.rb", "test/relevance/tarantula/invalid_html_handler_test.rb", "test/relevance/tarantula/io_reporter_test.rb", "test/relevance/tarantula/link_test.rb", "test/relevance/tarantula/log_grabber_test.rb", "test/relevance/tarantula/rails_integration_proxy_test.rb", "test/relevance/tarantula/result_test.rb", "test/relevance/tarantula/tidy_handler_test.rb", "test/relevance/tarantula/transform_test.rb", "test/relevance/tarantula_test.rb", "test/test_helper.rb", "tmp/test_output/images/background.jpg", "tmp/test_output/images/relevance-os-logo.gif", "tmp/test_output/images/tab.png", "tmp/test_output/images/table-sort.gif", "tmp/test_output/images/tarantula-sprites.png", "tmp/test_output/index.html", "tmp/test_output/javascripts/jquery-1.2.3.js", "tmp/test_output/javascripts/jquery-ui-tabs.js", "tmp/test_output/javascripts/jquery.tablesorter.js", "tmp/test_output/javascripts/tarantula.js", "tmp/test_output/stylesheets/tarantula.css", "tmp/test_output/stylesheets/ui.tabs.css", "tmp/test_output/test_user_pages/1.html", "tmp/test_output/test_user_pages/10.html", "tmp/test_output/test_user_pages/11.html", "tmp/test_output/test_user_pages/12.html", "tmp/test_output/test_user_pages/13.html", "tmp/test_output/test_user_pages/14.html", "tmp/test_output/test_user_pages/15.html", "tmp/test_output/test_user_pages/16.html", "tmp/test_output/test_user_pages/17.html", "tmp/test_output/test_user_pages/18.html", "tmp/test_output/test_user_pages/19.html", "tmp/test_output/test_user_pages/2.html", "tmp/test_output/test_user_pages/20.html", "tmp/test_output/test_user_pages/3.html", "tmp/test_output/test_user_pages/4.html", "tmp/test_output/test_user_pages/5.html", "tmp/test_output/test_user_pages/6.html", "tmp/test_output/test_user_pages/7.html", "tmp/test_output/test_user_pages/8.html", "tmp/test_output/test_user_pages/9.html", "uninstall.rb", "vendor/xss-shield/MIT-LICENSE", "vendor/xss-shield/README", "vendor/xss-shield/init.rb", "vendor/xss-shield/lib/xss_shield/erb_hacks.rb", "vendor/xss-shield/lib/xss_shield/haml_hacks.rb", "vendor/xss-shield/lib/xss_shield/safe_string.rb", "vendor/xss-shield/lib/xss_shield/secure_helpers.rb", "vendor/xss-shield/lib/xss_shield.rb", "vendor/xss-shield/test/test_actionview_integration.rb", "vendor/xss-shield/test/test_erb.rb", "vendor/xss-shield/test/test_haml.rb", "vendor/xss-shield/test/test_helpers.rb", "vendor/xss-shield/test/test_safe_string.rb", "manifest.txt", "tarantula.gemspec"]
10
+ s.extra_rdoc_files = ["CHANGELOG", "lib/relevance/core_extensions/ellipsize.rb", "lib/relevance/core_extensions/file.rb", "lib/relevance/core_extensions/response.rb", "lib/relevance/core_extensions/test_case.rb", "lib/relevance/tarantula/attack.rb", "lib/relevance/tarantula/attack_form_submission.rb", "lib/relevance/tarantula/attack_handler.rb", "lib/relevance/tarantula/crawler.rb", "lib/relevance/tarantula/detail.html.erb", "lib/relevance/tarantula/form.rb", "lib/relevance/tarantula/form_submission.rb", "lib/relevance/tarantula/html_document_handler.rb", "lib/relevance/tarantula/html_report_helper.rb", "lib/relevance/tarantula/html_reporter.rb", "lib/relevance/tarantula/index.html.erb", "lib/relevance/tarantula/invalid_html_handler.rb", "lib/relevance/tarantula/io_reporter.rb", "lib/relevance/tarantula/link.rb", "lib/relevance/tarantula/log_grabber.rb", "lib/relevance/tarantula/rails_integration_proxy.rb", "lib/relevance/tarantula/recording.rb", "lib/relevance/tarantula/response.rb", "lib/relevance/tarantula/result.rb", "lib/relevance/tarantula/test_report.html.erb", "lib/relevance/tarantula/tidy_handler.rb", "lib/relevance/tarantula/transform.rb", "lib/relevance/tarantula.rb", "MIT-LICENSE", "README.rdoc", "vendor/xss-shield/MIT-LICENSE"]
11
+ s.files = ["CHANGELOG", "init.rb", "install.rb", "laf/images/background.jpg", "laf/images/relevance-os-logo.gif", "laf/images/tab.png", "laf/images/table-sort.gif", "laf/images/tarantula-sprites.png", "laf/javascripts/jquery-1.2.3.js", "laf/javascripts/jquery-ui-tabs.js", "laf/javascripts/jquery.tablesorter.js", "laf/javascripts/tarantula.js", "laf/stylesheets/tarantula.css", "laf/stylesheets/ui.tabs.css", "lib/relevance/core_extensions/ellipsize.rb", "lib/relevance/core_extensions/file.rb", "lib/relevance/core_extensions/response.rb", "lib/relevance/core_extensions/test_case.rb", "lib/relevance/tarantula/attack.rb", "lib/relevance/tarantula/attack_form_submission.rb", "lib/relevance/tarantula/attack_handler.rb", "lib/relevance/tarantula/crawler.rb", "lib/relevance/tarantula/detail.html.erb", "lib/relevance/tarantula/form.rb", "lib/relevance/tarantula/form_submission.rb", "lib/relevance/tarantula/html_document_handler.rb", "lib/relevance/tarantula/html_report_helper.rb", "lib/relevance/tarantula/html_reporter.rb", "lib/relevance/tarantula/index.html.erb", "lib/relevance/tarantula/invalid_html_handler.rb", "lib/relevance/tarantula/io_reporter.rb", "lib/relevance/tarantula/link.rb", "lib/relevance/tarantula/log_grabber.rb", "lib/relevance/tarantula/rails_integration_proxy.rb", "lib/relevance/tarantula/recording.rb", "lib/relevance/tarantula/response.rb", "lib/relevance/tarantula/result.rb", "lib/relevance/tarantula/test_report.html.erb", "lib/relevance/tarantula/tidy_handler.rb", "lib/relevance/tarantula/transform.rb", "lib/relevance/tarantula.rb", "manifest.txt", "MIT-LICENSE", "rails/init.rb", "Rakefile", "README.rdoc", "tarantula.gemspec", "tasks/tarantula_tasks.rake", "template/tarantula_test.rb", "test/relevance/core_extensions/ellipsize_test.rb", "test/relevance/core_extensions/file_test.rb", "test/relevance/core_extensions/response_test.rb", "test/relevance/core_extensions/test_case_test.rb", "test/relevance/tarantula/attack_form_submission_test.rb", "test/relevance/tarantula/attack_handler_test.rb", "test/relevance/tarantula/crawler_test.rb", "test/relevance/tarantula/form_submission_test.rb", "test/relevance/tarantula/form_test.rb", "test/relevance/tarantula/html_document_handler_test.rb", "test/relevance/tarantula/html_report_helper_test.rb", "test/relevance/tarantula/html_reporter_test.rb", "test/relevance/tarantula/invalid_html_handler_test.rb", "test/relevance/tarantula/io_reporter_test.rb", "test/relevance/tarantula/link_test.rb", "test/relevance/tarantula/log_grabber_test.rb", "test/relevance/tarantula/rails_integration_proxy_test.rb", "test/relevance/tarantula/result_test.rb", "test/relevance/tarantula/tidy_handler_test.rb", "test/relevance/tarantula/transform_test.rb", "test/relevance/tarantula_test.rb", "test/test_helper.rb", "tmp/test_output/images/background.jpg", "tmp/test_output/images/relevance-os-logo.gif", "tmp/test_output/images/tab.png", "tmp/test_output/images/table-sort.gif", "tmp/test_output/images/tarantula-sprites.png", "tmp/test_output/index.html", "tmp/test_output/javascripts/jquery-1.2.3.js", "tmp/test_output/javascripts/jquery-ui-tabs.js", "tmp/test_output/javascripts/jquery.tablesorter.js", "tmp/test_output/javascripts/tarantula.js", "tmp/test_output/stylesheets/tarantula.css", "tmp/test_output/stylesheets/ui.tabs.css", "tmp/test_output/test_user_pages/1.html", "tmp/test_output/test_user_pages/10.html", "tmp/test_output/test_user_pages/11.html", "tmp/test_output/test_user_pages/12.html", "tmp/test_output/test_user_pages/13.html", "tmp/test_output/test_user_pages/14.html", "tmp/test_output/test_user_pages/15.html", "tmp/test_output/test_user_pages/16.html", "tmp/test_output/test_user_pages/17.html", "tmp/test_output/test_user_pages/18.html", "tmp/test_output/test_user_pages/19.html", "tmp/test_output/test_user_pages/2.html", "tmp/test_output/test_user_pages/20.html", "tmp/test_output/test_user_pages/3.html", "tmp/test_output/test_user_pages/4.html", "tmp/test_output/test_user_pages/5.html", "tmp/test_output/test_user_pages/6.html", "tmp/test_output/test_user_pages/7.html", "tmp/test_output/test_user_pages/8.html", "tmp/test_output/test_user_pages/9.html", "uninstall.rb", "vendor/xss-shield/init.rb", "vendor/xss-shield/lib/xss_shield/erb_hacks.rb", "vendor/xss-shield/lib/xss_shield/haml_hacks.rb", "vendor/xss-shield/lib/xss_shield/safe_string.rb", "vendor/xss-shield/lib/xss_shield/secure_helpers.rb", "vendor/xss-shield/lib/xss_shield.rb", "vendor/xss-shield/MIT-LICENSE", "vendor/xss-shield/README", "vendor/xss-shield/test/test_actionview_integration.rb", "vendor/xss-shield/test/test_erb.rb", "vendor/xss-shield/test/test_haml.rb", "vendor/xss-shield/test/test_helpers.rb", "vendor/xss-shield/test/test_safe_string.rb"]
12
12
  s.has_rdoc = true
13
13
  s.homepage = %q{http://opensource.thinkrelevance.com/wiki/tarantula}
14
14
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Tarantula", "--main", "README.rdoc"]
@@ -28,12 +28,14 @@ Gem::Specification.new do |s|
28
28
  s.add_runtime_dependency(%q<facets>, [">= 2.4.3"])
29
29
  s.add_development_dependency(%q<ruby-debug>, [">= 0"])
30
30
  s.add_development_dependency(%q<test-spec>, [">= 0"])
31
+ s.add_development_dependency(%q<mocha>, [">= 0"])
31
32
  else
32
33
  s.add_dependency(%q<htmlentities>, [">= 0"])
33
34
  s.add_dependency(%q<hpricot>, [">= 0"])
34
35
  s.add_dependency(%q<facets>, [">= 2.4.3"])
35
36
  s.add_dependency(%q<ruby-debug>, [">= 0"])
36
37
  s.add_dependency(%q<test-spec>, [">= 0"])
38
+ s.add_dependency(%q<mocha>, [">= 0"])
37
39
  end
38
40
  else
39
41
  s.add_dependency(%q<htmlentities>, [">= 0"])
@@ -41,5 +43,6 @@ Gem::Specification.new do |s|
41
43
  s.add_dependency(%q<facets>, [">= 2.4.3"])
42
44
  s.add_dependency(%q<ruby-debug>, [">= 0"])
43
45
  s.add_dependency(%q<test-spec>, [">= 0"])
46
+ s.add_dependency(%q<mocha>, [">= 0"])
44
47
  end
45
48
  end
@@ -1,11 +1,10 @@
1
1
  require File.join(File.dirname(__FILE__), "../..", "test_helper.rb")
2
2
  require 'relevance/core_extensions/test_case'
3
- include Relevance::Tarantula
4
3
 
5
4
  describe "TestCase extensions" do
6
5
  it "can create the crawler" do
7
- RailsIntegrationProxy.stubs(:rails_root).returns("STUB_RAILS_ROOT")
8
- Crawler.any_instance.stubs(:rails_root).returns("STUB_RAILS_ROOT")
6
+ Relevance::Tarantula::RailsIntegrationProxy.stubs(:rails_root).returns("STUB_RAILS_ROOT")
7
+ Relevance::Tarantula::Crawler.any_instance.stubs(:rails_root).returns("STUB_RAILS_ROOT")
9
8
  tarantula_crawler(stub_everything)
10
9
  end
11
10
 
@@ -17,7 +17,7 @@ describe "Relevance::Tarantula::AttackFormSubmission" do
17
17
  </form>
18
18
  END
19
19
  @form = Relevance::Tarantula::Form.new(@tag.at('form'))
20
- @fs = Relevance::Tarantula::AttackFormSubmission.new(@form, Attack.new({:name => 'foo_name', :input => 'foo_code', :output => 'foo_code'}))
20
+ @fs = Relevance::Tarantula::AttackFormSubmission.new(@form, Relevance::Tarantula::Attack.new({:name => 'foo_name', :input => 'foo_code', :output => 'foo_code'}))
21
21
  end
22
22
 
23
23
  it "can mutate text areas" do
@@ -49,16 +49,16 @@ END
49
49
  end
50
50
 
51
51
  it "processes all its attacks" do
52
- AttackFormSubmission.stubs(:attacks).returns([
53
- Attack.new({:name => 'foo_name1', :input => 'foo_input', :output => 'foo_output'}),
54
- Attack.new({:name => 'foo_name2', :input => 'foo_input', :output => 'foo_output'}),
52
+ Relevance::Tarantula::AttackFormSubmission.stubs(:attacks).returns([
53
+ Relevance::Tarantula::Attack.new({:name => 'foo_name1', :input => 'foo_input', :output => 'foo_output'}),
54
+ Relevance::Tarantula::Attack.new({:name => 'foo_name2', :input => 'foo_input', :output => 'foo_output'}),
55
55
  ])
56
56
  Relevance::Tarantula::AttackFormSubmission.mutate(@form).size.should == 2
57
57
  end
58
58
 
59
59
  it "maps hash attacks to Attack instances" do
60
- AttackFormSubmission.instance_variable_set("@attacks", [{ :name => "attack name"}])
61
- AttackFormSubmission.attacks.should == [Attack.new({:name => "attack name"})]
60
+ Relevance::Tarantula::AttackFormSubmission.instance_variable_set("@attacks", [{ :name => "attack name"}])
61
+ Relevance::Tarantula::AttackFormSubmission.attacks.should == [Relevance::Tarantula::Attack.new({:name => "attack name"})]
62
62
  end
63
63
  end
64
64
 
@@ -1,20 +1,19 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::AttackHandler" do
5
4
  before do
6
5
  @handler = Relevance::Tarantula::AttackHandler.new
7
- attack = Attack.new({:name => 'foo_name', :input => 'foo_code', :output => '<bad>'})
6
+ attack = Relevance::Tarantula::Attack.new({:name => 'foo_name', :input => 'foo_code', :output => '<bad>'})
8
7
  @handler.stubs(:attacks).returns([attack])
9
8
  end
10
9
 
11
10
  it "lets safe documents through" do
12
- result = @handler.handle(Result.new(:response => stub(:html? => true, :body => '<a href="/foo">good</a>')))
11
+ result = @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => '<a href="/foo">good</a>')))
13
12
  result.should == nil
14
13
  end
15
14
 
16
15
  it "detects the supplied code" do
17
- result = @handler.handle(Result.new(:response => stub(:html? => true, :body => '<a href="/foo"><bad></a>')))
16
+ result = @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => '<a href="/foo"><bad></a>')))
18
17
  result.success.should == false
19
18
  end
20
19
  end
@@ -22,9 +21,9 @@ end
22
21
  describe "Attacks without an output specified" do
23
22
  it "never matches anything" do
24
23
  handler = Relevance::Tarantula::AttackHandler.new
25
- attack = Attack.new({:name => 'foo_name', :input => 'foo_code'})
24
+ attack = Relevance::Tarantula::Attack.new({:name => 'foo_name', :input => 'foo_code'})
26
25
  Relevance::Tarantula::AttackFormSubmission.stubs(:attacks).returns([attack])
27
- result = handler.handle(Result.new(:response => stub(:html? => true, :body => '<a href="/foo">good</a>')))
26
+ result = handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => '<a href="/foo">good</a>')))
28
27
  result.should == nil
29
28
  end
30
29
  end
@@ -1,8 +1,7 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe 'Relevance::Tarantula::Crawler#transform_url' do
5
- before {@crawler = Crawler.new}
4
+ before {@crawler = Relevance::Tarantula::Crawler.new}
6
5
  it "de-obfuscates unicode obfuscated urls" do
7
6
  obfuscated_mailto = "&#109;&#97;&#105;&#108;&#116;&#111;&#58;"
8
7
  @crawler.transform_url(obfuscated_mailto).should == "mailto:"
@@ -15,12 +14,12 @@ end
15
14
 
16
15
  describe 'Relevance::Tarantula::Crawler log grabbing' do
17
16
  it "returns nil if no grabber is specified" do
18
- crawler = Crawler.new
17
+ crawler = Relevance::Tarantula::Crawler.new
19
18
  crawler.grab_log!.should == nil
20
19
  end
21
20
 
22
21
  it "returns grabber.grab if grabber is specified" do
23
- crawler = Crawler.new
22
+ crawler = Relevance::Tarantula::Crawler.new
24
23
  crawler.log_grabber = stub(:grab! => "fake log entry")
25
24
  crawler.grab_log!.should == "fake log entry"
26
25
  end
@@ -28,7 +27,7 @@ end
28
27
 
29
28
  describe 'Relevance::Tarantula::Crawler interruption' do
30
29
  it 'catches interruption and writes the partial report' do
31
- crawler = Crawler.new
30
+ crawler = Relevance::Tarantula::Crawler.new
32
31
  crawler.stubs(:queue_link)
33
32
  crawler.stubs(:do_crawl).raises(Interrupt)
34
33
  crawler.expects(:report_results)
@@ -47,9 +46,9 @@ describe 'Relevance::Tarantula::Crawler handle_form_results' do
47
46
  :log => nil,
48
47
  :method => :stub_method,
49
48
  :test_name => nil}
50
- result = Result.new(result_args)
51
- Result.expects(:new).with(result_args).returns(result)
52
- crawler = Crawler.new
49
+ result = Relevance::Tarantula::Result.new(result_args)
50
+ Relevance::Tarantula::Result.expects(:new).with(result_args).returns(result)
51
+ crawler = Relevance::Tarantula::Crawler.new
53
52
  crawler.handle_form_results(stub_everything(:method => :stub_method, :action => :action_stub),
54
53
  response)
55
54
  end
@@ -57,7 +56,7 @@ end
57
56
 
58
57
  describe 'Relevance::Tarantula::Crawler#crawl' do
59
58
  it 'queues the first url, does crawl, and then reports results' do
60
- crawler = Crawler.new
59
+ crawler = Relevance::Tarantula::Crawler.new
61
60
  crawler.expects(:queue_link).with("/foobar")
62
61
  crawler.expects(:do_crawl)
63
62
  crawler.expects(:report_results)
@@ -65,7 +64,7 @@ describe 'Relevance::Tarantula::Crawler#crawl' do
65
64
  end
66
65
 
67
66
  it 'reports results even if the crawl fails' do
68
- crawler = Crawler.new
67
+ crawler = Relevance::Tarantula::Crawler.new
69
68
  crawler.expects(:do_crawl).raises(RuntimeError)
70
69
  crawler.expects(:report_results)
71
70
  lambda {crawler.crawl('/')}.should.raise(RuntimeError)
@@ -74,7 +73,7 @@ end
74
73
 
75
74
  describe 'Relevance::Tarantula::Crawler queuing' do
76
75
  it 'queues and remembers links' do
77
- crawler = Crawler.new
76
+ crawler = Relevance::Tarantula::Crawler.new
78
77
  crawler.expects(:transform_url).with("/url").returns("/transformed")
79
78
  crawler.queue_link("/url")
80
79
  crawler.links_to_crawl.should == [Relevance::Tarantula::Link.new("/transformed")]
@@ -82,16 +81,16 @@ describe 'Relevance::Tarantula::Crawler queuing' do
82
81
  end
83
82
 
84
83
  it 'queues and remembers forms' do
85
- crawler = Crawler.new
84
+ crawler = Relevance::Tarantula::Crawler.new
86
85
  form = Hpricot('<form action="/action" method="post"/>').at('form')
87
- signature = FormSubmission.new(Form.new(form)).signature
86
+ signature = Relevance::Tarantula::FormSubmission.new(Relevance::Tarantula::Form.new(form)).signature
88
87
  crawler.queue_form(form)
89
88
  crawler.forms_to_crawl.size.should == 1
90
89
  crawler.form_signatures_queued.should == Set.new([signature])
91
90
  end
92
91
 
93
92
  it 'remembers link referrer if there is one' do
94
- crawler = Crawler.new
93
+ crawler = Relevance::Tarantula::Crawler.new
95
94
  crawler.queue_link("/url", "/some-referrer")
96
95
  crawler.referrers.should == {Relevance::Tarantula::Link.new("/url") => "/some-referrer"}
97
96
  end
@@ -100,7 +99,7 @@ end
100
99
 
101
100
  describe 'Relevance::Tarantula::Crawler#report_results' do
102
101
  it "delegates to generate_reports" do
103
- crawler = Crawler.new
102
+ crawler = Relevance::Tarantula::Crawler.new
104
103
  crawler.expects(:generate_reports)
105
104
  crawler.report_results
106
105
  end
@@ -110,7 +109,7 @@ describe 'Relevance::Tarantula::Crawler#crawling' do
110
109
 
111
110
  it "converts ActiveRecord::RecordNotFound into a 404" do
112
111
  (proxy = stub_everything).expects(:send).raises(ActiveRecord::RecordNotFound)
113
- crawler = Crawler.new
112
+ crawler = Relevance::Tarantula::Crawler.new
114
113
  crawler.proxy = proxy
115
114
  response = crawler.crawl_form stub_everything(:method => nil)
116
115
  response.code.should == "404"
@@ -119,7 +118,7 @@ describe 'Relevance::Tarantula::Crawler#crawling' do
119
118
  end
120
119
 
121
120
  it "does four things with each link: get, log, handle, and blip" do
122
- crawler = Crawler.new
121
+ crawler = Relevance::Tarantula::Crawler.new
123
122
  crawler.proxy = stub
124
123
  response = stub(:code => "200")
125
124
  crawler.links_to_crawl = [stub(:href => "/foo1", :method => :get), stub(:href => "/foo2", :method => :get)]
@@ -132,7 +131,7 @@ describe 'Relevance::Tarantula::Crawler#crawling' do
132
131
  end
133
132
 
134
133
  it "invokes queued forms, logs responses, and calls handlers" do
135
- crawler = Crawler.new
134
+ crawler = Relevance::Tarantula::Crawler.new
136
135
  crawler.forms_to_crawl << stub_everything(:method => "get",
137
136
  :action => "/foo",
138
137
  :data => "some data",
@@ -144,7 +143,7 @@ describe 'Relevance::Tarantula::Crawler#crawling' do
144
143
  end
145
144
 
146
145
  it "resets to the initial links/forms on subsequent crawls when times_to_crawl > 1" do
147
- crawler = Crawler.new
146
+ crawler = Relevance::Tarantula::Crawler.new
148
147
  stub_puts_and_print(crawler)
149
148
  crawler.proxy = stub
150
149
  response = stub(:code => "200")
@@ -163,13 +162,13 @@ end
163
162
 
164
163
  describe 'Crawler blip' do
165
164
  it "blips the current progress if !verbose" do
166
- crawler = Crawler.new
165
+ crawler = Relevance::Tarantula::Crawler.new
167
166
  crawler.stubs(:verbose).returns false
168
167
  crawler.expects(:print).with("\r 0 of 0 links completed ")
169
168
  crawler.blip
170
169
  end
171
170
  it "blips nothing if verbose" do
172
- crawler = Crawler.new
171
+ crawler = Relevance::Tarantula::Crawler.new
173
172
  crawler.stubs(:verbose).returns true
174
173
  crawler.expects(:print).never
175
174
  crawler.blip
@@ -178,24 +177,24 @@ end
178
177
 
179
178
  describe 'Relevance::Tarantula::Crawler' do
180
179
  it "is finished when the links and forms are crawled" do
181
- crawler = Crawler.new
180
+ crawler = Relevance::Tarantula::Crawler.new
182
181
  crawler.finished?.should == true
183
182
  end
184
183
 
185
184
  it "isn't finished when links remain" do
186
- crawler = Crawler.new
185
+ crawler = Relevance::Tarantula::Crawler.new
187
186
  crawler.links_to_crawl = [:stub_link]
188
187
  crawler.finished?.should == false
189
188
  end
190
189
 
191
190
  it "isn't finished when links remain" do
192
- crawler = Crawler.new
191
+ crawler = Relevance::Tarantula::Crawler.new
193
192
  crawler.forms_to_crawl = [:stub_form]
194
193
  crawler.finished?.should == false
195
194
  end
196
195
 
197
196
  it "crawls links and forms again and again until finished?==true" do
198
- crawler = Crawler.new
197
+ crawler = Relevance::Tarantula::Crawler.new
199
198
  crawler.expects(:finished?).times(3).returns(false, false, true)
200
199
  crawler.expects(:crawl_queued_links).times(2)
201
200
  crawler.expects(:crawl_queued_forms).times(2)
@@ -203,7 +202,7 @@ describe 'Relevance::Tarantula::Crawler' do
203
202
  end
204
203
 
205
204
  it "asks each reporter to write its report in report_dir" do
206
- crawler = Crawler.new
205
+ crawler = Relevance::Tarantula::Crawler.new
207
206
  crawler.stubs(:report_dir).returns(test_output_dir)
208
207
  reporter = stub_everything
209
208
  reporter.expects(:report)
@@ -214,13 +213,13 @@ describe 'Relevance::Tarantula::Crawler' do
214
213
  end
215
214
 
216
215
  it "builds a report dir relative to rails root" do
217
- crawler = Crawler.new
216
+ crawler = Relevance::Tarantula::Crawler.new
218
217
  crawler.expects(:rails_root).returns("faux_rails_root")
219
218
  crawler.report_dir.should == "faux_rails_root/tmp/tarantula"
220
219
  end
221
220
 
222
221
  it "skips links that are already queued" do
223
- crawler = Crawler.new
222
+ crawler = Relevance::Tarantula::Crawler.new
224
223
  crawler.should_skip_link?(Relevance::Tarantula::Link.new("/foo")).should == false
225
224
  crawler.queue_link("/foo").should == Relevance::Tarantula::Link.new("/foo")
226
225
  crawler.should_skip_link?(Relevance::Tarantula::Link.new("/foo")).should == true
@@ -230,7 +229,7 @@ end
230
229
 
231
230
  describe "Crawler link skipping" do
232
231
  before do
233
- @crawler = Crawler.new
232
+ @crawler = Relevance::Tarantula::Crawler.new
234
233
  end
235
234
 
236
235
  it "skips links that are too long" do
@@ -279,19 +278,19 @@ end
279
278
 
280
279
  describe "allow_nnn_for" do
281
280
  it "installs result as a response_code_handler" do
282
- crawler = Crawler.new
283
- crawler.response_code_handler.should == Result
281
+ crawler = Relevance::Tarantula::Crawler.new
282
+ crawler.response_code_handler.should == Relevance::Tarantula::Result
284
283
  end
285
284
 
286
285
  it "delegates to the response_code_handler" do
287
- crawler = Crawler.new
286
+ crawler = Relevance::Tarantula::Crawler.new
288
287
  (response_code_handler = mock).expects(:allow_404_for).with(:stub)
289
288
  crawler.response_code_handler = response_code_handler
290
289
  crawler.allow_404_for(:stub)
291
290
  end
292
291
 
293
292
  it "chains up to super for method_missing" do
294
- crawler = Crawler.new
293
+ crawler = Relevance::Tarantula::Crawler.new
295
294
  lambda{crawler.foo}.should.raise(NoMethodError)
296
295
  end
297
296
  end
@@ -1,5 +1,4 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::HtmlDocumentHandler" do
5
4
 
@@ -10,34 +9,34 @@ describe "Relevance::Tarantula::HtmlDocumentHandler" do
10
9
  it "does not write HTML Scanner warnings to the console" do
11
10
  bad_html = "<html><div></form></html>"
12
11
  err = Recording.stderr do
13
- @handler.handle(Result.new(:response => stub(:html? => true, :body => bad_html)))
12
+ @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => bad_html)))
14
13
  end
15
14
  err.should == ""
16
15
  end
17
16
 
18
17
  it "ignores non-html" do
19
18
  @handler.expects(:queue_link).never
20
- @handler.handle(Result.new(:response => stub(:html? => false, :body => '<a href="/foo">foo</a>')))
19
+ @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => false, :body => '<a href="/foo">foo</a>')))
21
20
  end
22
21
 
23
22
  it "queues anchor tags" do
24
23
  @handler.expects(:queue_link).with {|*args| args[0]['href'] == "/foo" && args[1] == nil}
25
- @handler.handle(Result.new(:response => stub(:html? => true, :body => '<a href="/foo">foo</a>')))
24
+ @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => '<a href="/foo">foo</a>')))
26
25
  end
27
26
 
28
27
  it "queues link tags" do
29
28
  @handler.expects(:queue_link).with {|*args| args[0]['href'] == "/bar" && args[1] == nil}
30
- @handler.handle(Result.new(:response => stub(:html? => true, :body => '<link href="/bar">bar</a>')))
29
+ @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => '<link href="/bar">bar</a>')))
31
30
  end
32
31
 
33
32
  it "queues forms" do
34
33
  @handler.expects(:queue_form).with{|tag,referrer| Hpricot::Elem === tag}
35
- @handler.handle(Result.new(:url => "/page-url", :response => stub(:html? => true, :body => '<form>stuff</form>')))
34
+ @handler.handle(Relevance::Tarantula::Result.new(:url => "/page-url", :response => stub(:html? => true, :body => '<form>stuff</form>')))
36
35
  end
37
36
 
38
37
  it "infers form action from page url if form is not explicit" do
39
38
  @handler.expects(:queue_form).with{|tag,referrer| tag['action'].should == '/page-url'; true }
40
- @handler.handle(Result.new(:url => "/page-url", :response => stub(:html? => true, :body => '<form>stuff</form>')))
39
+ @handler.handle(Relevance::Tarantula::Result.new(:url => "/page-url", :response => stub(:html? => true, :body => '<form>stuff</form>')))
41
40
  end
42
41
 
43
42
  end
@@ -1,7 +1,6 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
2
 
3
3
  module HtmlReportHelperSpec
4
- include Relevance::Tarantula
5
4
 
6
5
  # Is there an idiom for this?
7
6
  def self.included(base)
@@ -1,7 +1,7 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
2
 
3
3
  describe "Relevance::Tarantula::HtmlReporter file output" do
4
- include Relevance::Tarantula
4
+
5
5
  before do
6
6
  FileUtils.rm_rf(test_output_dir)
7
7
  FileUtils.mkdir_p(test_output_dir)
@@ -1,5 +1,4 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::InvalidHtmlHandler" do
5
4
  before do
@@ -9,26 +8,26 @@ describe "Relevance::Tarantula::InvalidHtmlHandler" do
9
8
  it "does not write HTML Scanner warnings to the console" do
10
9
  bad_html = "<html><div></form></html>"
11
10
  err = Recording.stderr do
12
- @handler.handle(Result.new(:response => stub(:html? => true, :body => bad_html)))
11
+ @handler.handle(Relevance::Tarantula::Result.new(:response => stub(:html? => true, :body => bad_html)))
13
12
  end
14
13
  err.should == ""
15
14
  end
16
15
 
17
16
  it "rejects unclosed html" do
18
17
  response = stub(:html? => true, :body => '<html><div></html>', :code => 200)
19
- result = @handler.handle(Result.new(:response => response))
18
+ result = @handler.handle(Relevance::Tarantula::Result.new(:response => response))
20
19
  result.success.should == false
21
20
  result.description.should == "Bad HTML (Scanner)"
22
21
  end
23
22
 
24
23
  it "loves the good html" do
25
24
  response = stub(:html? => true, :body => '<html><div></div></html>', :code => 200)
26
- @handler.handle(Result.new(:response => response)).should == nil
25
+ @handler.handle(Relevance::Tarantula::Result.new(:response => response)).should == nil
27
26
  end
28
27
 
29
28
  it "ignores non html" do
30
29
  response = stub(:html? => false, :body => '<html><div></html>', :code => 200)
31
- @handler.handle(Result.new(:response => response)).should == nil
30
+ @handler.handle(Relevance::Tarantula::Result.new(:response => response)).should == nil
32
31
  end
33
32
  end
34
33
 
@@ -1,9 +1,8 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe 'Relevance::Tarantula::IOReporter' do
5
4
  it "reports errors to stderr and then raises" do
6
- reporter = IOReporter.new($stderr)
5
+ reporter = Relevance::Tarantula::IOReporter.new($stderr)
7
6
  reporter.report stub(:code => "404", :url => "/uh-oh", :success => false)
8
7
  $stderr.expects(:puts).with("****** FAILURES")
9
8
  $stderr.expects(:puts).with("404: /uh-oh")
@@ -1,5 +1,4 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::Link" do
5
4
  include ActionView::Helpers::UrlHelper
@@ -47,3 +46,16 @@ describe "Relevance::Tarantula::Link" do
47
46
 
48
47
  end
49
48
 
49
+ describe "possible conflict when user has an AR model named Link" do
50
+ it "does not taint Object with Relevance::Tarantula" do
51
+ Object.ancestors.should.not.include Relevance::Tarantula
52
+ end
53
+
54
+ it "doesnt break with a Link model" do
55
+ lambda {
56
+ class Link < ActiveRecord::Base
57
+ end
58
+ }.should.not.raise
59
+ end
60
+
61
+ end
@@ -1,9 +1,8 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe 'Relevance::Tarantula::LogGrabber' do
5
4
  before do
6
- @grabber = LogGrabber.new(log_file)
5
+ @grabber = Relevance::Tarantula::LogGrabber.new(log_file)
7
6
  FileUtils.mkdir_p(test_output_dir)
8
7
  end
9
8
 
@@ -1,29 +1,28 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::RailsIntegrationProxy rails_integration_test" do
5
4
  before {
6
- Crawler.any_instance.stubs(:crawl)
7
- Crawler.any_instance.stubs(:rails_root).returns("STUB_RAILS_ROOT")
8
- RailsIntegrationProxy.stubs(:rails_root).returns("STUB_RAILS_ROOT")
9
- RailsIntegrationProxy.stubs(:new).returns(stub(:integration_test => stub(:method_name => @test_name)))
5
+ Relevance::Tarantula::Crawler.any_instance.stubs(:crawl)
6
+ Relevance::Tarantula::Crawler.any_instance.stubs(:rails_root).returns("STUB_RAILS_ROOT")
7
+ Relevance::Tarantula::RailsIntegrationProxy.stubs(:rails_root).returns("STUB_RAILS_ROOT")
8
+ Relevance::Tarantula::RailsIntegrationProxy.stubs(:new).returns(stub(:integration_test => stub(:method_name => @test_name)))
10
9
  @test_name = "test_user_pages"
11
10
  }
12
11
 
13
12
  it "strips leading hostname from link urls" do
14
- crawler = RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"))
13
+ crawler = Relevance::Tarantula::RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"))
15
14
  crawler.transform_url("http://foo.com/path").should == "/path"
16
15
  crawler.transform_url("http://bar.com/path").should == "http://bar.com/path"
17
16
  end
18
17
 
19
18
  it "allows override of max_url_length" do
20
- crawler = RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"),
19
+ crawler = Relevance::Tarantula::RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"),
21
20
  :max_url_length => 16)
22
21
  crawler.max_url_length.should == 16
23
22
  end
24
23
 
25
24
  it "has some useful defaults" do
26
- crawler = RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"))
25
+ crawler = Relevance::Tarantula::RailsIntegrationProxy.rails_integration_test(stub(:host => "foo.com"))
27
26
  crawler.log_grabber.should.not.be nil
28
27
  end
29
28
  end
@@ -1,5 +1,4 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  describe "Relevance::Tarantula::Result" do
5
4
  before do
@@ -39,12 +38,12 @@ describe "Relevance::Tarantula::Result class methods" do
39
38
 
40
39
  it "adds successful responses to success collection" do
41
40
  stub = stub_everything(:code => "200")
42
- @rh.handle(Result.new(:response => stub)).success.should == true
41
+ @rh.handle(Relevance::Tarantula::Result.new(:response => stub)).success.should == true
43
42
  end
44
43
 
45
44
  it "adds failed responses to failure collection" do
46
45
  stub = stub_everything(:code => "500")
47
- result = @rh.handle(Result.new(:response => stub))
46
+ result = @rh.handle(Relevance::Tarantula::Result.new(:response => stub))
48
47
  result.success.should == false
49
48
  result.description.should == "Bad HTTP Response"
50
49
  end
@@ -53,32 +52,32 @@ end
53
52
 
54
53
  describe "Relevance::Tarantula::Result allowed errors" do
55
54
  before do
56
- Result.allow_errors_for = {}
55
+ Relevance::Tarantula::Result.allow_errors_for = {}
57
56
  end
58
57
 
59
58
  it "defaults to *not* skip errors" do
60
- Result.can_skip_error?(stub(:code => "404")).should == false
59
+ Relevance::Tarantula::Result.can_skip_error?(stub(:code => "404")).should == false
61
60
  end
62
61
 
63
62
  it "can skip errors matching code and url" do
64
- Result.allow_errors_for = {"404" => [/some_url/]}
65
- Result.can_skip_error?(stub(:code => "404", :url => "this_is_some_url")).should == true
63
+ Relevance::Tarantula::Result.allow_errors_for = {"404" => [/some_url/]}
64
+ Relevance::Tarantula::Result.can_skip_error?(stub(:code => "404", :url => "this_is_some_url")).should == true
66
65
  end
67
66
 
68
67
  it "does not skip errors matching code only" do
69
- Result.allow_errors_for = {"404" => [/some_other_url/]}
70
- Result.can_skip_error?(stub(:code => "404", :url => "this_is_some_url")).should == false
68
+ Relevance::Tarantula::Result.allow_errors_for = {"404" => [/some_other_url/]}
69
+ Relevance::Tarantula::Result.can_skip_error?(stub(:code => "404", :url => "this_is_some_url")).should == false
71
70
  end
72
71
 
73
72
  it "users allow_nnn_for syntax to specify allowed errors" do
74
- Result.allow_404_for(/this_url/)
75
- Result.allow_errors_for.should == {"404" => [/this_url/]}
76
- Result.allow_404_for(/another_url/)
77
- Result.allow_errors_for.should == {"404" => [/this_url/, /another_url/]}
73
+ Relevance::Tarantula::Result.allow_404_for(/this_url/)
74
+ Relevance::Tarantula::Result.allow_errors_for.should == {"404" => [/this_url/]}
75
+ Relevance::Tarantula::Result.allow_404_for(/another_url/)
76
+ Relevance::Tarantula::Result.allow_errors_for.should == {"404" => [/this_url/, /another_url/]}
78
77
  end
79
78
 
80
79
  it "chains to super method missing" do
81
- lambda{Result.allow_xxx_for}.should.raise(NoMethodError)
80
+ lambda{Relevance::Tarantula::Result.allow_xxx_for}.should.raise(NoMethodError)
82
81
  end
83
82
 
84
83
  end
@@ -1,5 +1,4 @@
1
1
  require File.join(File.dirname(__FILE__), "..", "..", "test_helper.rb")
2
- include Relevance::Tarantula
3
2
 
4
3
  if defined?(Tidy) && ENV['TIDY_PATH']
5
4
  describe "Relevance::Tarantula::TidyHandler default" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relevance-tarantula
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Relevance
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-09-10 00:00:00 -07:00
12
+ date: 2008-09-26 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -57,6 +57,15 @@ dependencies:
57
57
  - !ruby/object:Gem::Version
58
58
  version: "0"
59
59
  version:
60
+ - !ruby/object:Gem::Dependency
61
+ name: mocha
62
+ version_requirement:
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: "0"
68
+ version:
60
69
  description: A big hairy fuzzy spider that crawls your site, wreaking havoc
61
70
  email: opensource@thinkrelevance.com
62
71
  executables: []
@@ -64,8 +73,7 @@ executables: []
64
73
  extensions: []
65
74
 
66
75
  extra_rdoc_files:
67
- - MIT-LICENSE
68
- - README.rdoc
76
+ - CHANGELOG
69
77
  - lib/relevance/core_extensions/ellipsize.rb
70
78
  - lib/relevance/core_extensions/file.rb
71
79
  - lib/relevance/core_extensions/response.rb
@@ -93,11 +101,11 @@ extra_rdoc_files:
93
101
  - lib/relevance/tarantula/tidy_handler.rb
94
102
  - lib/relevance/tarantula/transform.rb
95
103
  - lib/relevance/tarantula.rb
96
- - vendor/xss-shield/MIT-LICENSE
97
- files:
98
104
  - MIT-LICENSE
99
105
  - README.rdoc
100
- - Rakefile
106
+ - vendor/xss-shield/MIT-LICENSE
107
+ files:
108
+ - CHANGELOG
101
109
  - init.rb
102
110
  - install.rb
103
111
  - laf/images/background.jpg
@@ -138,6 +146,12 @@ files:
138
146
  - lib/relevance/tarantula/tidy_handler.rb
139
147
  - lib/relevance/tarantula/transform.rb
140
148
  - lib/relevance/tarantula.rb
149
+ - manifest.txt
150
+ - MIT-LICENSE
151
+ - rails/init.rb
152
+ - Rakefile
153
+ - README.rdoc
154
+ - tarantula.gemspec
141
155
  - tasks/tarantula_tasks.rake
142
156
  - template/tarantula_test.rb
143
157
  - test/relevance/core_extensions/ellipsize_test.rb
@@ -195,21 +209,19 @@ files:
195
209
  - tmp/test_output/test_user_pages/8.html
196
210
  - tmp/test_output/test_user_pages/9.html
197
211
  - uninstall.rb
198
- - vendor/xss-shield/MIT-LICENSE
199
- - vendor/xss-shield/README
200
212
  - vendor/xss-shield/init.rb
201
213
  - vendor/xss-shield/lib/xss_shield/erb_hacks.rb
202
214
  - vendor/xss-shield/lib/xss_shield/haml_hacks.rb
203
215
  - vendor/xss-shield/lib/xss_shield/safe_string.rb
204
216
  - vendor/xss-shield/lib/xss_shield/secure_helpers.rb
205
217
  - vendor/xss-shield/lib/xss_shield.rb
218
+ - vendor/xss-shield/MIT-LICENSE
219
+ - vendor/xss-shield/README
206
220
  - vendor/xss-shield/test/test_actionview_integration.rb
207
221
  - vendor/xss-shield/test/test_erb.rb
208
222
  - vendor/xss-shield/test/test_haml.rb
209
223
  - vendor/xss-shield/test/test_helpers.rb
210
224
  - vendor/xss-shield/test/test_safe_string.rb
211
- - manifest.txt
212
- - tarantula.gemspec
213
225
  has_rdoc: true
214
226
  homepage: http://opensource.thinkrelevance.com/wiki/tarantula
215
227
  post_install_message: