raygun4ruby 3.0.0 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rspec +1 -0
  4. data/.travis.yml +0 -2
  5. data/CHANGELOG.md +5 -0
  6. data/Rakefile +9 -2
  7. data/lib/raygun.rb +2 -0
  8. data/lib/raygun/configuration.rb +6 -0
  9. data/lib/raygun/javascript_tracker.rb +42 -0
  10. data/lib/raygun/middleware/javascript_exception_tracking.rb +30 -0
  11. data/lib/raygun/railtie.rb +2 -1
  12. data/lib/raygun/version.rb +1 -1
  13. data/raygun4ruby.gemspec +8 -1
  14. data/spec/dummy/.ruby-version +1 -0
  15. data/spec/dummy/Rakefile +6 -0
  16. data/spec/dummy/app/assets/config/manifest.js +3 -0
  17. data/spec/dummy/app/assets/images/.keep +0 -0
  18. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  19. data/spec/dummy/app/assets/javascripts/cable.js +13 -0
  20. data/spec/dummy/app/assets/javascripts/channels/.keep +0 -0
  21. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  22. data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
  23. data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
  24. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  25. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  26. data/spec/dummy/app/controllers/home_controller.rb +4 -0
  27. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  28. data/spec/dummy/app/jobs/application_job.rb +2 -0
  29. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  30. data/spec/dummy/app/models/application_record.rb +3 -0
  31. data/spec/dummy/app/models/concerns/.keep +0 -0
  32. data/spec/dummy/app/views/home/index.html.erb +3 -0
  33. data/spec/dummy/app/views/home/index.json.erb +1 -0
  34. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  35. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  36. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  37. data/spec/dummy/bin/bundle +3 -0
  38. data/spec/dummy/bin/rails +4 -0
  39. data/spec/dummy/bin/rake +4 -0
  40. data/spec/dummy/bin/setup +36 -0
  41. data/spec/dummy/bin/update +31 -0
  42. data/spec/dummy/bin/yarn +11 -0
  43. data/spec/dummy/config.ru +5 -0
  44. data/spec/dummy/config/application.rb +18 -0
  45. data/spec/dummy/config/boot.rb +5 -0
  46. data/spec/dummy/config/cable.yml +10 -0
  47. data/spec/dummy/config/database.yml +25 -0
  48. data/spec/dummy/config/environment.rb +5 -0
  49. data/spec/dummy/config/environments/development.rb +61 -0
  50. data/spec/dummy/config/environments/production.rb +94 -0
  51. data/spec/dummy/config/environments/test.rb +46 -0
  52. data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
  53. data/spec/dummy/config/initializers/assets.rb +14 -0
  54. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  55. data/spec/dummy/config/initializers/content_security_policy.rb +25 -0
  56. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  57. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  58. data/spec/dummy/config/initializers/inflections.rb +16 -0
  59. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  60. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  61. data/spec/dummy/config/locales/en.yml +33 -0
  62. data/spec/dummy/config/puma.rb +34 -0
  63. data/spec/dummy/config/routes.rb +3 -0
  64. data/spec/dummy/config/spring.rb +6 -0
  65. data/spec/dummy/config/storage.yml +34 -0
  66. data/spec/dummy/db/schema.rb +15 -0
  67. data/spec/dummy/db/test.sqlite3 +0 -0
  68. data/spec/dummy/lib/assets/.keep +0 -0
  69. data/spec/dummy/package.json +5 -0
  70. data/spec/dummy/public/404.html +67 -0
  71. data/spec/dummy/public/422.html +67 -0
  72. data/spec/dummy/public/500.html +66 -0
  73. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  74. data/spec/dummy/public/apple-touch-icon.png +0 -0
  75. data/spec/dummy/public/favicon.ico +0 -0
  76. data/spec/dummy/storage/.keep +0 -0
  77. data/spec/features/javascript_spec.rb +48 -0
  78. data/spec/rails_helper.rb +4 -0
  79. data/{specs → spec}/raygun/breadcrumbs/breadcrumb_spec.rb +19 -19
  80. data/{specs → spec}/raygun/breadcrumbs/store_spec.rb +21 -23
  81. data/{specs → spec}/raygun/raygun_spec.rb +5 -8
  82. data/{specs → spec}/services/apply_whitelist_filter_to_payload_spec.rb +9 -9
  83. data/spec/spec_helper.rb +24 -0
  84. data/spec/support/fake_logger.rb +17 -0
  85. data/test/test_helper.rb +1 -0
  86. data/test/unit/configuration_test.rb +12 -0
  87. metadata +163 -9
  88. data/specs/spec_helper.rb +0 -29
@@ -1,6 +1,4 @@
1
- require "minitest/autorun"
2
- require "minitest/pride"
3
- require_relative "../../spec_helper"
1
+ require "spec_helper"
4
2
 
5
3
  module Raygun
6
4
  module Breadcrumbs
@@ -10,39 +8,39 @@ module Raygun
10
8
 
11
9
  describe "#initialize" do
12
10
  before do
13
- subject.stored.must_equal(nil)
11
+ expect(subject.stored).to eq(nil)
14
12
 
15
13
  subject.initialize
16
14
  end
17
15
 
18
16
  it "creates the store on the current Thread" do
19
- subject.stored.must_equal([])
17
+ expect(subject.stored).to eq([])
20
18
  end
21
19
 
22
20
  it "does not effect other threads" do
23
21
  Thread.new do
24
- subject.stored.must_equal(nil)
22
+ expect(subject.stored).to eq(nil)
25
23
  end.join
26
24
  end
27
25
  end
28
26
 
29
- describe "any?" do
27
+ describe "#any?" do
30
28
  it "returns true if any breadcrumbs have been logged" do
31
29
  subject.initialize
32
30
 
33
31
  subject.record(message: "test")
34
32
 
35
- subject.any?.must_equal(true)
33
+ expect(subject.any?).to eq(true)
36
34
  end
37
35
 
38
36
  it "returns false if none have been logged" do
39
37
  subject.initialize
40
38
 
41
- subject.any?.must_equal(false)
39
+ expect(subject.any?).to eq(false)
42
40
  end
43
41
 
44
42
  it "returns false if the store is uninitialized" do
45
- subject.any?.must_equal(false)
43
+ expect(subject.any?).to eq(false)
46
44
  end
47
45
  end
48
46
 
@@ -54,18 +52,18 @@ module Raygun
54
52
  it "resets the store back to nil" do
55
53
  subject.clear
56
54
 
57
- subject.stored.must_equal(nil)
55
+ expect(subject.stored).to eq(nil)
58
56
  end
59
57
  end
60
58
 
61
59
  describe "#should_record?" do
62
60
  it "returns false when the log level is above the breadcrumbs level" do
63
- Raygun.configuration.stubs(:breadcrumb_level).returns(:error)
61
+ allow(Raygun.configuration).to receive(:breadcrumb_level).and_return(:error)
64
62
 
65
63
  crumb = Breadcrumb.new
66
64
  crumb.level = :warning
67
65
 
68
- assert_equal false, subject.send(:should_record?, crumb)
66
+ expect(subject.send(:should_record?, crumb)).to eq(false)
69
67
  end
70
68
  end
71
69
 
@@ -86,28 +84,28 @@ module Raygun
86
84
  it "gets stored" do
87
85
  subject.record(message: "test")
88
86
 
89
- subject.stored.length.must_equal(1)
90
- subject.stored[0].message.must_equal("test")
87
+ expect(subject.stored.length).to eq(1)
88
+ expect(subject.stored[0].message).to eq("test")
91
89
  end
92
90
 
93
91
  it "automatically sets the class name" do
94
92
  Foo.new.bar
95
93
 
96
94
  bc = subject.stored[0]
97
- bc.class_name.must_equal("Raygun::Breadcrumbs::Foo")
95
+ expect(bc.class_name).to eq("Raygun::Breadcrumbs::Foo")
98
96
  end
99
97
 
100
98
  it "automatically sets the method name" do
101
99
  Foo.new.bar
102
100
 
103
101
  bc = subject.stored[0]
104
- bc.method_name.must_equal("bar")
102
+ expect(bc.method_name).to eq("bar")
105
103
  end
106
104
 
107
105
  it "does not set the method name if it is already set" do
108
106
  subject.record(message: 'test', method_name: "foo")
109
107
 
110
- subject.stored[0].method_name.must_equal("foo")
108
+ expect(subject.stored[0].method_name).to eq("foo")
111
109
  end
112
110
 
113
111
 
@@ -116,7 +114,7 @@ module Raygun
116
114
  Foo.new.bar
117
115
 
118
116
  bc = subject.stored[0]
119
- bc.timestamp.must_equal(Time.now.utc.to_i)
117
+ expect(bc.timestamp).to eq(Time.now.utc.to_i)
120
118
  end
121
119
  end
122
120
 
@@ -126,21 +124,21 @@ module Raygun
126
124
  Timecop.freeze do
127
125
  subject.record(message: 'test', timestamp: time)
128
126
 
129
- subject.stored[0].timestamp.wont_equal(Time.now.utc)
127
+ expect(subject.stored[0].timestamp).to_not eq(Time.now.utc)
130
128
  end
131
129
  end
132
130
 
133
131
  it "sets the log level to :info if one is not supplied" do
134
132
  Foo.new.bar
135
133
 
136
- subject.stored[0].level.must_equal(:info)
134
+ expect(subject.stored[0].level).to eq(:info)
137
135
  end
138
136
 
139
137
  it "does not record the breadcrumb if should_record? is false" do
140
- subject.stubs(:should_record?).returns(false)
138
+ expect(subject).to receive(:should_record?).and_return(false)
141
139
  Foo.new.bar
142
140
 
143
- subject.stored.length.must_equal(0)
141
+ expect(subject.stored.length).to eq(0)
144
142
  end
145
143
  end
146
144
  end
@@ -1,5 +1,4 @@
1
- require_relative '../spec_helper'
2
- require 'stringio'
1
+ require 'spec_helper'
3
2
 
4
3
  describe Raygun do
5
4
  let(:failsafe_logger) { FakeLogger.new }
@@ -8,6 +7,7 @@ describe Raygun do
8
7
  context 'send in background' do
9
8
  before do
10
9
  Raygun.setup do |c|
10
+ c.silence_reporting = false
11
11
  c.send_in_background = true
12
12
  c.api_url = 'http://example.api'
13
13
  c.api_key = 'foo'
@@ -28,23 +28,20 @@ describe Raygun do
28
28
 
29
29
  # Occasionally doesn't write to the failsafe logger, add small timeout to add some safety
30
30
  sleep 0.1
31
- failsafe_logger.get.must_match /Problem reporting exception to Raygun/
31
+ expect(failsafe_logger.get).to match /Problem reporting exception to Raygun/
32
32
  end
33
33
  end
34
34
  end
35
35
  end
36
36
 
37
37
  describe '#reset_configuration' do
38
+ subject { Raygun.reset_configuration }
38
39
  it 'clears any customized configuration options' do
39
40
  Raygun.setup do |c|
40
41
  c.api_url = 'http://test.api'
41
42
  end
42
43
 
43
- Raygun.configuration.api_url.must_equal 'http://test.api'
44
-
45
- Raygun.reset_configuration
46
-
47
- Raygun.configuration.api_url.must_equal Raygun.default_configuration.api_url
44
+ expect { subject }.to change { Raygun.configuration.api_url }.from('http://test.api').to(Raygun.default_configuration.api_url)
48
45
  end
49
46
  end
50
47
  end
@@ -1,4 +1,4 @@
1
- require_relative "../spec_helper"
1
+ require "spec_helper"
2
2
 
3
3
  module Raygun
4
4
  module Services
@@ -20,7 +20,7 @@ module Raygun
20
20
 
21
21
  new_payload = service.call(shape, payload)
22
22
 
23
- new_payload.must_equal(expected)
23
+ expect(new_payload).to eq(expected)
24
24
  end
25
25
 
26
26
  it "filters out keys that are set to false" do
@@ -31,7 +31,7 @@ module Raygun
31
31
 
32
32
  new_payload = service.call(shape, payload)
33
33
 
34
- new_payload.must_equal(expected)
34
+ expect(new_payload).to eq(expected)
35
35
  end
36
36
  end
37
37
 
@@ -61,7 +61,7 @@ module Raygun
61
61
 
62
62
  new_payload = service.call(shape, payload)
63
63
 
64
- new_payload.must_equal(expected)
64
+ expect(new_payload).to eq(expected)
65
65
  end
66
66
 
67
67
  it "filters out a nested hash if the whitelist does not contain it" do
@@ -72,7 +72,7 @@ module Raygun
72
72
 
73
73
  new_payload = service.call(shape, payload)
74
74
 
75
- new_payload.must_equal(expected)
75
+ expect(new_payload).to eq(expected)
76
76
  end
77
77
 
78
78
  it "handles nested hashes when the whitelist is set to allow the whole hash" do
@@ -89,7 +89,7 @@ module Raygun
89
89
 
90
90
  new_payload = service.call(shape, payload)
91
91
 
92
- new_payload.must_equal(expected)
92
+ expect(new_payload).to eq(expected)
93
93
  end
94
94
 
95
95
  it "handles nested hashes when the whitelist is set to not allow the whole hash" do
@@ -104,7 +104,7 @@ module Raygun
104
104
 
105
105
  new_payload = service.call(shape, payload)
106
106
 
107
- new_payload.must_equal(expected)
107
+ expect(new_payload).to eq(expected)
108
108
  end
109
109
  end
110
110
 
@@ -124,7 +124,7 @@ module Raygun
124
124
 
125
125
  new_payload = service.call(shape, payload)
126
126
 
127
- new_payload.must_equal(expected)
127
+ expect(new_payload).to eq(expected)
128
128
  end
129
129
  end
130
130
 
@@ -244,7 +244,7 @@ module Raygun
244
244
 
245
245
  new_payload = service.call(shape, payload)
246
246
 
247
- new_payload.must_equal(expected)
247
+ expect(new_payload).to eq(expected)
248
248
  end
249
249
  end
250
250
  end
@@ -0,0 +1,24 @@
1
+ #require 'rubygems'
2
+
3
+ require 'timecop'
4
+ require 'webmock/rspec'
5
+
6
+ # Coverage
7
+ require 'simplecov'
8
+ SimpleCov.start do
9
+ add_filter '/spec/'
10
+ end
11
+
12
+ require 'support/fake_logger'
13
+
14
+ RSpec.configure do |config|
15
+ # Enable flags like --only-failures and --next-failure
16
+ # config.example_status_persistence_file_path = ".rspec_status"
17
+
18
+ # Disable RSpec exposing methods globally on `Module` and `main`
19
+ # config.disable_monkey_patching!
20
+
21
+ config.expect_with :rspec do |c|
22
+ c.syntax = :expect
23
+ end
24
+ end
@@ -0,0 +1,17 @@
1
+ class FakeLogger
2
+ def initialize
3
+ @logger = StringIO.new
4
+ end
5
+
6
+ def info(message)
7
+ @logger.write(message)
8
+ end
9
+
10
+ def reset
11
+ @logger.string = ""
12
+ end
13
+
14
+ def get
15
+ @logger.string
16
+ end
17
+ end
data/test/test_helper.rb CHANGED
@@ -5,6 +5,7 @@ require "minitest/pride"
5
5
  require "timecop"
6
6
  require "mocha/mini_test"
7
7
  require 'stringio'
8
+ require 'webmock/minitest'
8
9
 
9
10
  class FakeLogger
10
11
  def initialize
@@ -25,6 +25,18 @@ class ConfigurationTest < Raygun::UnitTest
25
25
  assert_equal 9.9, Raygun.configuration[:version]
26
26
  end
27
27
 
28
+ def test_set_js_api_key
29
+ Raygun.configuration.js_api_key = "a test js api key"
30
+
31
+ assert_equal "a test js api key", Raygun.configuration.js_api_key
32
+ end
33
+
34
+ def test_set_js_api_version
35
+ Raygun.configuration.js_api_version = "a test js api version"
36
+
37
+ assert_equal "a test js api version", Raygun.configuration.js_api_version
38
+ end
39
+
28
40
  def test_enable_reporting
29
41
  Raygun.configuration.enable_reporting = false
30
42
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raygun4ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mindscape
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-12-17 00:00:00.000000000 Z
12
+ date: 2019-01-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -115,14 +115,14 @@ dependencies:
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '4.2'
118
+ version: '5.11'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - "~>"
124
124
  - !ruby/object:Gem::Version
125
- version: '4.2'
125
+ version: '5.11'
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: redis-namespace
128
128
  requirement: !ruby/object:Gem::Requirement
@@ -213,6 +213,90 @@ dependencies:
213
213
  - - ">="
214
214
  - !ruby/object:Gem::Version
215
215
  version: '0'
216
+ - !ruby/object:Gem::Dependency
217
+ name: rails
218
+ requirement: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - '='
221
+ - !ruby/object:Gem::Version
222
+ version: '5.2'
223
+ type: :development
224
+ prerelease: false
225
+ version_requirements: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - '='
228
+ - !ruby/object:Gem::Version
229
+ version: '5.2'
230
+ - !ruby/object:Gem::Dependency
231
+ name: sqlite3
232
+ requirement: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ type: :development
238
+ prerelease: false
239
+ version_requirements: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - ">="
242
+ - !ruby/object:Gem::Version
243
+ version: '0'
244
+ - !ruby/object:Gem::Dependency
245
+ name: capybara
246
+ requirement: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - ">="
249
+ - !ruby/object:Gem::Version
250
+ version: '0'
251
+ type: :development
252
+ prerelease: false
253
+ version_requirements: !ruby/object:Gem::Requirement
254
+ requirements:
255
+ - - ">="
256
+ - !ruby/object:Gem::Version
257
+ version: '0'
258
+ - !ruby/object:Gem::Dependency
259
+ name: rspec-rails
260
+ requirement: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ version: '0'
265
+ type: :development
266
+ prerelease: false
267
+ version_requirements: !ruby/object:Gem::Requirement
268
+ requirements:
269
+ - - ">="
270
+ - !ruby/object:Gem::Version
271
+ version: '0'
272
+ - !ruby/object:Gem::Dependency
273
+ name: launchy
274
+ requirement: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - ">="
277
+ - !ruby/object:Gem::Version
278
+ version: '0'
279
+ type: :development
280
+ prerelease: false
281
+ version_requirements: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
286
+ - !ruby/object:Gem::Dependency
287
+ name: simplecov
288
+ requirement: !ruby/object:Gem::Requirement
289
+ requirements:
290
+ - - ">="
291
+ - !ruby/object:Gem::Version
292
+ version: '0'
293
+ type: :development
294
+ prerelease: false
295
+ version_requirements: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - ">="
298
+ - !ruby/object:Gem::Version
299
+ version: '0'
216
300
  description: Ruby Adapter for Raygun.io
217
301
  email:
218
302
  - hello@raygun.io
@@ -221,6 +305,7 @@ extensions: []
221
305
  extra_rdoc_files: []
222
306
  files:
223
307
  - ".gitignore"
308
+ - ".rspec"
224
309
  - ".travis.yml"
225
310
  - CHANGELOG.md
226
311
  - Gemfile
@@ -237,7 +322,9 @@ files:
237
322
  - lib/raygun/client.rb
238
323
  - lib/raygun/configuration.rb
239
324
  - lib/raygun/error.rb
325
+ - lib/raygun/javascript_tracker.rb
240
326
  - lib/raygun/middleware/breadcrumbs_store_initializer.rb
327
+ - lib/raygun/middleware/javascript_exception_tracking.rb
241
328
  - lib/raygun/middleware/rack_exception_interceptor.rb
242
329
  - lib/raygun/middleware/rails_insert_affected_user.rb
243
330
  - lib/raygun/railtie.rb
@@ -249,11 +336,78 @@ files:
249
336
  - lib/resque/failure/raygun.rb
250
337
  - lib/tasks/raygun.tasks
251
338
  - raygun4ruby.gemspec
252
- - specs/raygun/breadcrumbs/breadcrumb_spec.rb
253
- - specs/raygun/breadcrumbs/store_spec.rb
254
- - specs/raygun/raygun_spec.rb
255
- - specs/services/apply_whitelist_filter_to_payload_spec.rb
256
- - specs/spec_helper.rb
339
+ - spec/dummy/.ruby-version
340
+ - spec/dummy/Rakefile
341
+ - spec/dummy/app/assets/config/manifest.js
342
+ - spec/dummy/app/assets/images/.keep
343
+ - spec/dummy/app/assets/javascripts/application.js
344
+ - spec/dummy/app/assets/javascripts/cable.js
345
+ - spec/dummy/app/assets/javascripts/channels/.keep
346
+ - spec/dummy/app/assets/stylesheets/application.css
347
+ - spec/dummy/app/channels/application_cable/channel.rb
348
+ - spec/dummy/app/channels/application_cable/connection.rb
349
+ - spec/dummy/app/controllers/application_controller.rb
350
+ - spec/dummy/app/controllers/concerns/.keep
351
+ - spec/dummy/app/controllers/home_controller.rb
352
+ - spec/dummy/app/helpers/application_helper.rb
353
+ - spec/dummy/app/jobs/application_job.rb
354
+ - spec/dummy/app/mailers/application_mailer.rb
355
+ - spec/dummy/app/models/application_record.rb
356
+ - spec/dummy/app/models/concerns/.keep
357
+ - spec/dummy/app/views/home/index.html.erb
358
+ - spec/dummy/app/views/home/index.json.erb
359
+ - spec/dummy/app/views/layouts/application.html.erb
360
+ - spec/dummy/app/views/layouts/mailer.html.erb
361
+ - spec/dummy/app/views/layouts/mailer.text.erb
362
+ - spec/dummy/bin/bundle
363
+ - spec/dummy/bin/rails
364
+ - spec/dummy/bin/rake
365
+ - spec/dummy/bin/setup
366
+ - spec/dummy/bin/update
367
+ - spec/dummy/bin/yarn
368
+ - spec/dummy/config.ru
369
+ - spec/dummy/config/application.rb
370
+ - spec/dummy/config/boot.rb
371
+ - spec/dummy/config/cable.yml
372
+ - spec/dummy/config/database.yml
373
+ - spec/dummy/config/environment.rb
374
+ - spec/dummy/config/environments/development.rb
375
+ - spec/dummy/config/environments/production.rb
376
+ - spec/dummy/config/environments/test.rb
377
+ - spec/dummy/config/initializers/application_controller_renderer.rb
378
+ - spec/dummy/config/initializers/assets.rb
379
+ - spec/dummy/config/initializers/backtrace_silencers.rb
380
+ - spec/dummy/config/initializers/content_security_policy.rb
381
+ - spec/dummy/config/initializers/cookies_serializer.rb
382
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
383
+ - spec/dummy/config/initializers/inflections.rb
384
+ - spec/dummy/config/initializers/mime_types.rb
385
+ - spec/dummy/config/initializers/wrap_parameters.rb
386
+ - spec/dummy/config/locales/en.yml
387
+ - spec/dummy/config/puma.rb
388
+ - spec/dummy/config/routes.rb
389
+ - spec/dummy/config/spring.rb
390
+ - spec/dummy/config/storage.yml
391
+ - spec/dummy/db/schema.rb
392
+ - spec/dummy/db/test.sqlite3
393
+ - spec/dummy/lib/assets/.keep
394
+ - spec/dummy/log/.keep
395
+ - spec/dummy/package.json
396
+ - spec/dummy/public/404.html
397
+ - spec/dummy/public/422.html
398
+ - spec/dummy/public/500.html
399
+ - spec/dummy/public/apple-touch-icon-precomposed.png
400
+ - spec/dummy/public/apple-touch-icon.png
401
+ - spec/dummy/public/favicon.ico
402
+ - spec/dummy/storage/.keep
403
+ - spec/features/javascript_spec.rb
404
+ - spec/rails_helper.rb
405
+ - spec/raygun/breadcrumbs/breadcrumb_spec.rb
406
+ - spec/raygun/breadcrumbs/store_spec.rb
407
+ - spec/raygun/raygun_spec.rb
408
+ - spec/services/apply_whitelist_filter_to_payload_spec.rb
409
+ - spec/spec_helper.rb
410
+ - spec/support/fake_logger.rb
257
411
  - test/integration/client_test.rb
258
412
  - test/test_helper.rb
259
413
  - test/unit/affected_user_test.rb