grell 1.6.2 → 1.6.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3afa2c4a7602651c1120450604bb129b5141a2cb
4
- data.tar.gz: 6b047d176835d70ece39ddfc8f0d1f947c509297
3
+ metadata.gz: d96a4b468d41e32bf37e86fd2f7688eaba9e290b
4
+ data.tar.gz: b90fe28a5776478668db3f7a3451d3e15000680e
5
5
  SHA512:
6
- metadata.gz: 6abace1d5c825dc06b5f46cc432b63457f8b3d1c904f6d041714bd2f7925216797cb6c36be23cb40210bb8dcd15c9408681c048f01379f5263e6c732029281a5
7
- data.tar.gz: a6e12d878deca33d25be3dfd88c945a7a149e47b3eed4e2269c651a6ad1a51ceeb29d1b07e9a75066bf86823e1488b1a2583284566722f4829c2e3b707839e26
6
+ metadata.gz: da5a76f9c558836c1f16f51689b094caffece98ed7cbc254a7603a28b8c4b0699d5f2dd07f29a70f234ab9be9af25cc645974a293331f413c66c4756003e125e
7
+ data.tar.gz: 1d299821051f559c5253f63e18437a69ba97764b9bf21018bb223e5380380530b7d8e8e722c0c319f4628a3f0be2f1d5d8d91d33eeba9c0cb6dc46af4233646a
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ language: ruby
2
+ cache: bundler
3
+ sudo: false
4
+
5
+ rvm:
6
+ - 2.2.4
7
+ - 2.3.0
8
+ script: bundle exec rspec
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ # 1.6.4
2
+ * Added #quit to Capybara driver
3
+
4
+ # 1.6.3
5
+ * Only follow visible links
6
+
1
7
  # 1.6.2
2
8
  * Reset Capybara driver to Puffing Billy (used to rewrite URL requests in specs)
3
9
  * Use float timestamp for Poltergeist driver name to support fast test executions
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Grell
2
2
 
3
+ [![Build Status](https://travis-ci.org/mdsol/grell.svg?branch=develop)](https://travis-ci.org/mdsol/grell)
4
+
3
5
  Grell is a generic crawler for the web written in Ruby.
4
6
  It can be used to gather data, test pages in a given domain, etc.
5
7
 
data/grell.gemspec CHANGED
@@ -21,8 +21,8 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 1.9.3'
23
23
 
24
- spec.add_dependency 'capybara', '~> 2.2'
25
- spec.add_dependency 'poltergeist', '~> 1.8'
24
+ spec.add_dependency 'capybara', '~> 2.7'
25
+ spec.add_dependency 'poltergeist', '~> 1.9'
26
26
 
27
27
  spec.add_development_dependency "bundler", "~> 1.6"
28
28
  spec.add_development_dependency "byebug", "~> 4.0"
@@ -40,6 +40,10 @@ module Grell
40
40
 
41
41
  @poltergeist_driver
42
42
  end
43
+
44
+ def quit
45
+ @poltergeist_driver.quit
46
+ end
43
47
  end
44
48
 
45
49
  end
data/lib/grell/rawpage.rb CHANGED
@@ -23,7 +23,8 @@ module Grell
23
23
  def all_anchors
24
24
  # Some elements may not be "a" elements but still provide a link. This usually is done for Javascript
25
25
  # to convert other elements which are not links to be able to be clicked naturally.
26
- all('[href]', visible: false).to_a + all('[data-href]', visible: false).to_a
26
+ # Only return links which are visible.
27
+ all('[href]', visible: true).to_a + all('[data-href]', visible: true).to_a
27
28
  end
28
29
 
29
30
 
data/lib/grell/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Grell
2
- VERSION = "1.6.2"
2
+ VERSION = "1.6.4".freeze
3
3
  end
@@ -23,14 +23,21 @@ RSpec.describe Grell::CapybaraDriver do
23
23
  driver = Grell::CapybaraDriver.new.setup_capybara
24
24
  expect(driver).to be_instance_of(Capybara::Poltergeist::Driver)
25
25
  end
26
+ end
26
27
 
27
- after do
28
- Timecop.return
29
-
30
- # Reset Capybara so future tests can easily stub HTTP requests
31
- Capybara.javascript_driver = :poltergeist_billy
32
- Capybara.default_driver = :poltergeist_billy
28
+ describe 'quit' do
29
+ let(:driver) { Grell::CapybaraDriver.new.setup_capybara }
30
+ it 'quits the poltergeist driver' do
31
+ expect_any_instance_of(Capybara::Poltergeist::Driver).to receive(:quit)
32
+ driver.quit
33
33
  end
34
34
  end
35
35
 
36
+ after do
37
+ Timecop.return
38
+
39
+ # Reset Capybara so future tests can easily stub HTTP requests
40
+ Capybara.javascript_driver = :poltergeist_billy
41
+ Capybara.default_driver = :poltergeist_billy
42
+ end
36
43
  end
@@ -21,6 +21,7 @@ RSpec.describe Grell::Crawler do
21
21
  it 'can provide your own logger' do
22
22
  Grell::Crawler.new(external_driver: true, logger: 33)
23
23
  expect(Grell.logger).to eq(33)
24
+ Grell.logger = Logger.new(nil)
24
25
  end
25
26
 
26
27
  it 'provides a stdout logger if nothing provided' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grell
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.2
4
+ version: 1.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jordi Polo Carres
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-23 00:00:00.000000000 Z
11
+ date: 2016-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capybara
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.2'
19
+ version: '2.7'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.2'
26
+ version: '2.7'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: poltergeist
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.8'
33
+ version: '1.9'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.8'
40
+ version: '1.9'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -158,6 +158,7 @@ extensions: []
158
158
  extra_rdoc_files: []
159
159
  files:
160
160
  - ".rspec"
161
+ - ".travis.yml"
161
162
  - CHANGELOG.md
162
163
  - Gemfile
163
164
  - LICENSE.txt
@@ -199,7 +200,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
199
200
  version: '0'
200
201
  requirements: []
201
202
  rubyforge_project:
202
- rubygems_version: 2.4.8
203
+ rubygems_version: 2.5.1
203
204
  signing_key:
204
205
  specification_version: 4
205
206
  summary: Ruby web crawler