Skip to content

Commit ab56da1

Browse files
authored
Merge pull request #21 from dbalatero/do-not-raise-on-filtered-errors
Prevent errors from being raised if they match a filter
2 parents 026bb7d + 708932c commit ab56da1

File tree

5 files changed

+34
-15
lines changed

5 files changed

+34
-15
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# 0.3.0
2+
3+
* Prevent errors from being raised if they match a filter
4+
15
# 0.2.1 [June 23, 2018]
26

37
* Added `filter_levels` option for filtering by log level (closes #4)

Gemfile.lock

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,23 @@
11
PATH
22
remote: .
33
specs:
4-
capybara-chromedriver-logger (0.2.1)
4+
capybara-chromedriver-logger (0.3.0)
55
capybara
66
colorize
77

88
GEM
99
remote: https://rubygems.org/
1010
specs:
11-
addressable (2.5.2)
12-
public_suffix (>= 2.0.2, < 4.0)
13-
capybara (2.18.0)
11+
addressable (2.7.0)
12+
public_suffix (>= 2.0.2, < 5.0)
13+
capybara (3.31.0)
1414
addressable
1515
mini_mime (>= 0.1.3)
16-
nokogiri (>= 1.3.3)
17-
rack (>= 1.0.0)
18-
rack-test (>= 0.5.4)
19-
xpath (>= 2.0, < 4.0)
16+
nokogiri (~> 1.8)
17+
rack (>= 1.6.0)
18+
rack-test (>= 0.6.3)
19+
regexp_parser (~> 1.5)
20+
xpath (~> 3.2)
2021
childprocess (0.8.0)
2122
ffi (~> 1.0, >= 1.0.11)
2223
coderay (1.1.2)
@@ -25,18 +26,19 @@ GEM
2526
ffi (1.12.2)
2627
gem-release (2.0.1)
2728
method_source (0.9.0)
28-
mini_mime (1.0.0)
29+
mini_mime (1.0.2)
2930
mini_portile2 (2.4.0)
3031
nokogiri (1.10.8)
3132
mini_portile2 (~> 2.4.0)
3233
pry (0.11.3)
3334
coderay (~> 1.1.0)
3435
method_source (~> 0.9.0)
35-
public_suffix (3.0.2)
36+
public_suffix (4.0.3)
3637
rack (2.0.8)
37-
rack-test (1.0.0)
38+
rack-test (1.1.0)
3839
rack (>= 1.0, < 3)
3940
rake (13.0.1)
41+
regexp_parser (1.7.0)
4042
rspec (3.7.0)
4143
rspec-core (~> 3.7.0)
4244
rspec-expectations (~> 3.7.0)
@@ -60,7 +62,7 @@ GEM
6062
nokogiri (~> 1.6)
6163
rubyzip (~> 1.0)
6264
selenium-webdriver (>= 3.0, < 4.0)
63-
xpath (3.0.0)
65+
xpath (3.2.0)
6466
nokogiri (~> 1.8)
6567

6668
PLATFORMS

lib/capybara/chromedriver/logger/collector.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,12 @@ def raise_errors_if_needed!
3232
def flush_logs!
3333
browser_logs.each do |log|
3434
message = Message.new(log)
35-
errors << message if message.error?
35+
36+
next if should_filter?(message)
3637

37-
log_destination.puts message.to_s unless should_filter?(message)
38+
errors << message if message.error?
39+
40+
log_destination.puts message.to_s
3841
end
3942
end
4043

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
module Capybara
22
module Chromedriver
33
module Logger
4-
VERSION = "0.2.1"
4+
VERSION = "0.3.0"
55
end
66
end
77
end

spec/capybara/chromedriver/logger/collector_spec.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,16 @@
6767
Capybara::Chromedriver::Logger.filter_levels = nil
6868
end
6969

70+
it "should ignore filtered messages" do
71+
Capybara::Chromedriver::Logger.raise_js_errors = true
72+
Capybara::Chromedriver::Logger.filters = [/A console error/i]
73+
visit "/severe"
74+
75+
expect_to_have_inserted_element
76+
logger.flush_and_check_errors!
77+
expect_no_log_messages
78+
end
79+
7080
def expect_no_log_messages
7181
expect(log_destination.string).to eq('')
7282
end

0 commit comments

Comments
 (0)