forked from airbrake/airbrake
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuser_informer.feature
56 lines (52 loc) · 2.1 KB
/
user_informer.feature
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Feature: Inform the user of the airbrake notice that was just created
Background:
Given I successfully run `rails new rails_root -O --skip-gemfile`
And I cd to "rails_root"
And I configure the Airbrake shim
Scenario: Rescue an exception in a controller
When I run `rails generate airbrake -k myapikey`
And I define a response for "TestController#index":
"""
raise RuntimeError, "some message"
"""
And the response page for a "500" error is
"""
<!-- AIRBRAKE ERROR -->
"""
And I route "/test/index" to "test#index"
And I perform a request to "http://example.com:123/test/index?param=value" in the "production" environment
Then I should see "Airbrake Error b6817316-9c45-ed26-45eb-780dbb86aadb"
Scenario: Rescue an exception in a controller with a custom error string
When I configure the notifier to use the following configuration lines:
"""
config.user_information = 'Error #{{ error_id }}'
"""
And I run `rails generate airbrake -k myapikey`
And I define a response for "TestController#index":
"""
raise RuntimeError, "some message"
"""
And the response page for a "500" error is
"""
<!-- AIRBRAKE ERROR -->
"""
And I route "/test/index" to "test#index"
And I perform a request to "http://example.com:123/test/index?param=value" in the "production" environment
Then I should see "Error #b6817316-9c45-ed26-45eb-780dbb86aadb"
Scenario: Don't inform the user
When I configure the notifier to use the following configuration lines:
"""
config.user_information = false
"""
And I run `rails generate airbrake -k myapikey`
And I define a response for "TestController#index":
"""
raise RuntimeError, "some message"
"""
And the response page for a "500" error is
"""
<!-- AIRBRAKE ERROR -->
"""
And I route "/test/index" to "test#index"
And I perform a request to "http://example.com:123/test/index?param=value" in the "production" environment
Then I should not see "Airbrake Error b6817316-9c45-ed26-45eb-780dbb86aadb"