mailgun-tracking 0.3.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +5 -5
  2. data/lib/generators/mailgun/tracking/install_generator.rb +2 -0
  3. data/lib/mailgun/tracking.rb +2 -0
  4. data/lib/mailgun/tracking/configuration.rb +3 -1
  5. data/lib/mailgun/tracking/exceptions.rb +2 -0
  6. data/lib/mailgun/tracking/listener.rb +2 -0
  7. data/lib/mailgun/tracking/middleware.rb +13 -1
  8. data/lib/mailgun/tracking/notifier.rb +3 -1
  9. data/lib/mailgun/tracking/payload.rb +3 -0
  10. data/lib/mailgun/tracking/railtie.rb +2 -0
  11. data/lib/mailgun/tracking/request.rb +5 -0
  12. data/lib/mailgun/tracking/signature.rb +3 -0
  13. data/lib/mailgun/tracking/subscriber.rb +2 -0
  14. data/lib/mailgun/tracking/subscriber/all_messages.rb +2 -0
  15. data/lib/mailgun/tracking/subscriber/evented.rb +2 -0
  16. data/lib/mailgun/tracking/util.rb +3 -0
  17. data/lib/mailgun/tracking/version.rb +4 -2
  18. data/spec/dummy/rack/application.rb +2 -0
  19. data/spec/dummy/rails/application.rb +2 -0
  20. data/spec/dummy/rails/logs/test.log +34 -261
  21. data/spec/dummy/sinatra/application.rb +2 -0
  22. data/spec/integration/rack/rack_spec.rb +2 -1
  23. data/spec/integration/rails/rails_spec.rb +2 -1
  24. data/spec/integration/sinatra/sinatra_spec.rb +2 -1
  25. data/spec/mailgun/tracking/configuration_spec.rb +1 -1
  26. data/spec/mailgun/tracking/listener_spec.rb +1 -1
  27. data/spec/mailgun/tracking/middleware_spec.rb +4 -1
  28. data/spec/mailgun/tracking/notifier_spec.rb +1 -1
  29. data/spec/mailgun/tracking/payload_spec.rb +1 -1
  30. data/spec/mailgun/tracking/request_spec.rb +1 -1
  31. data/spec/mailgun/tracking/signature_spec.rb +1 -1
  32. data/spec/mailgun/tracking/subscriber/all_messages_spec.rb +1 -1
  33. data/spec/mailgun/tracking/subscriber/evented_spec.rb +1 -1
  34. data/spec/mailgun/tracking/subscriber_spec.rb +1 -1
  35. data/spec/mailgun/tracking/util_spec.rb +1 -1
  36. data/spec/mailgun/tracking/version_spec.rb +1 -1
  37. data/spec/mailgun/tracking_spec.rb +1 -1
  38. data/spec/spec_helper.rb +2 -0
  39. data/spec/support/fixture.rb +2 -0
  40. data/spec/support/rack_helpers.rb +2 -0
  41. data/spec/support/shared_examples/integration/acts_as_rack.rb +2 -0
  42. data/spec/support/shared_examples/subscriber.rb +2 -0
  43. data/spec/support/simplecov.rb +7 -3
  44. metadata +37 -36
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: b2f00cf238e43fe1fbe4b3da28f0ba82c14ddb46
4
- data.tar.gz: abb5171204c548e64e0088385b0bd8df1da7dd1a
2
+ SHA256:
3
+ metadata.gz: 21d2fa7599f08ae635591938264cdfdd0dadf64e2baed939ef236e5dead989a2
4
+ data.tar.gz: a6d7f4a3f6d1c87c08d14467608a02141dd40906d1b5172049662e8ae3ece203
5
5
  SHA512:
6
- metadata.gz: 97249174916ea976f68d3f3c4db86efcc3b711751acd3f4d63806e03097c08ceb3916e4a34ea650043b406f1fd46ef231ca9c8658c1e16910e7765f93f8a91a9
7
- data.tar.gz: c105354cd61ec52b16fab64eb7daf95af8164723fa451c1a2810887091f8760166f913ecf1c583ddf0dc86360a4e379cc215f9e120b6b043c0795692b84b2447
6
+ metadata.gz: 8238ebe57aabc593f7810d20a44fe2c3b8c3440aefcf07fb5a564d093304d1d37874e04dc22346d2dda996c4a9cac3596d4cf0f71af0aa4fd8f0bf5d256465cb
7
+ data.tar.gz: b90c4aacd8d8f8cc6ad70482eae5e2e23d2fe288fc77b7d259f30ed279214efd4e7d0c691a85d4de34344cb22812913bd9b3bc51d62897880d520e5252acce08
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Creates the Mailgun Tracking initializer file for Rails apps.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'mailgun/tracking/configuration'
2
4
  require 'mailgun/tracking/exceptions'
3
5
  require 'mailgun/tracking/listener'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'singleton'
2
4
 
3
5
  module Mailgun
@@ -6,7 +8,7 @@ module Mailgun
6
8
  class Configuration
7
9
  include Singleton
8
10
 
9
- DEFAULT_ENDPOINT = '/mailgun'.freeze
11
+ DEFAULT_ENDPOINT = '/mailgun'
10
12
 
11
13
  # Mailgun API public key.
12
14
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # A general Mailgun Tracking exception.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Represents a mechanism for event listeners to subscribe to events and for event broadcasts.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Rack-based middleware to handle event notifications.
@@ -9,14 +11,24 @@ module Mailgun
9
11
  @app = app
10
12
  end
11
13
 
12
- # Responds to Rack requests.
14
+ # Thread-safe {call!}.
13
15
  #
14
16
  # @param env [Hash] Environment hash.
15
17
  #
16
18
  # @return [Array(Numeric,Hash,Array)] The Rack-style response.
17
19
  def call(env)
20
+ dup.call!(env)
21
+ end
22
+
23
+ # Responds to Rack requests.
24
+ #
25
+ # @param env [Hash] Environment hash.
26
+ #
27
+ # @return [Array(Numeric,Hash,Array)] The Rack-style response.
28
+ def call!(env)
18
29
  @request = Request.new(env)
19
30
  return @app.call(env) unless @request.mailgun_tracking?
31
+
20
32
  handle_event
21
33
  end
22
34
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Wraps the {Listener} which gives a friendlier way to subscribe or broadcast.
@@ -8,7 +10,7 @@ module Mailgun
8
10
  #
9
11
  # @return [Mailgun::Tracking::Notifier]
10
12
  def initialize(listener = Listener.new)
11
- @listener ||= listener
13
+ @listener = listener
12
14
  end
13
15
 
14
16
  # Returns true if there is at least one subscriber.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'set'
2
4
 
3
5
  module Mailgun
@@ -39,6 +41,7 @@ module Mailgun
39
41
  keys.each do |key|
40
42
  define_method(key) { @options[key] }
41
43
  next unless [FalseClass, TrueClass].include?(options[key].class)
44
+
42
45
  define_method(:"#{key}?") { @options[key] }
43
46
  end
44
47
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Mailgun Tracking Railtie.
@@ -1,3 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rack/request'
4
+
1
5
  module Mailgun
2
6
  module Tracking
3
7
  # Provides a convenient interface to a Rack environment.
@@ -7,6 +11,7 @@ module Mailgun
7
11
  # @return [Boolean]
8
12
  def mailgun_tracking?
9
13
  return false unless post?
14
+
10
15
  path == Configuration.instance.endpoint
11
16
  end
12
17
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'openssl'
2
4
 
3
5
  module Mailgun
@@ -14,6 +16,7 @@ module Mailgun
14
16
  def self.verify!(payload)
15
17
  signature = new(payload)
16
18
  raise InvalidSignature unless signature.valid?
19
+
17
20
  true
18
21
  end
19
22
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'mailgun/tracking/subscriber/all_messages'
2
4
  require 'mailgun/tracking/subscriber/evented'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  module Subscriber
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  module Subscriber
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # Utility methods.
@@ -18,6 +20,7 @@ module Mailgun
18
20
  def normalize_keys(options)
19
21
  return from_h(options) if options.is_a?(Hash)
20
22
  return from_ary(options) if options.is_a?(Array)
23
+
21
24
  options
22
25
  end
23
26
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Mailgun
2
4
  module Tracking
3
5
  # This module holds the Mailgun Tracking version information.
@@ -10,14 +12,14 @@ module Mailgun
10
12
  #
11
13
  # @return [Integer]
12
14
  def major
13
- 0
15
+ 1
14
16
  end
15
17
 
16
18
  # Minor version.
17
19
  #
18
20
  # @return [Integer]
19
21
  def minor
20
- 3
22
+ 0
21
23
  end
22
24
 
23
25
  # Patch version.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Dummy
2
4
  Application = Rack::Builder.new do
3
5
  use Mailgun::Tracking::Middleware
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  ENV['RAILS_ENV'] = 'test'
2
4
 
3
5
  require 'rails'
@@ -1,265 +1,38 @@
1
- # Logfile created on 2018-03-13 02:09:24 +0200 by logger.rb/56438
2
- I, [2018-03-13T02:09:24.712282 #62428] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 02:09:24 +0200
3
- I, [2018-03-13T02:09:24.722710 #62428] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 02:09:24 +0200
4
- F, [2018-03-13T02:09:24.725562 #62428] FATAL -- :
5
- Mailgun::Tracking::InvalidSignature (Mailgun::Tracking::InvalidSignature):
6
- lib/mailgun/tracking/signature.rb:16:in `verify!'
7
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
8
- lib/mailgun/tracking/middleware.rb:21:in `call'
9
-
10
-
11
- I, [2018-03-13T02:10:59.655696 #62449] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 02:10:59 +0200
12
- I, [2018-03-13T02:10:59.667026 #62449] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 02:10:59 +0200
13
- F, [2018-03-13T02:10:59.669988 #62449] FATAL -- :
14
- Mailgun::Tracking::InvalidSignature (Mailgun::Tracking::InvalidSignature):
15
- lib/mailgun/tracking/signature.rb:16:in `verify!'
16
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
17
- lib/mailgun/tracking/middleware.rb:21:in `call'
18
-
19
-
20
- I, [2018-03-13T08:38:40.694094 #64748] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:38:40 +0200
21
- I, [2018-03-13T08:38:40.704042 #64748] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:38:40 +0200
22
- F, [2018-03-13T08:38:40.705522 #64748] FATAL -- :
23
- Mailgun::Tracking::InvalidSignature (Mailgun::Tracking::InvalidSignature):
24
- lib/mailgun/tracking/signature.rb:16:in `verify!'
25
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
26
- lib/mailgun/tracking/middleware.rb:21:in `call'
27
-
28
-
29
- I, [2018-03-13T08:39:03.847726 #64765] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:39:03 +0200
30
- I, [2018-03-13T08:39:03.852023 #64765] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:39:03 +0200
31
- F, [2018-03-13T08:39:03.852909 #64765] FATAL -- :
32
- Mailgun::Tracking::InvalidSignature (Mailgun::Tracking::InvalidSignature):
33
- lib/mailgun/tracking/signature.rb:16:in `verify!'
34
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
35
- lib/mailgun/tracking/middleware.rb:21:in `call'
36
-
37
-
38
- I, [2018-03-13T08:39:17.294931 #64774] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:39:17 +0200
39
- I, [2018-03-13T08:39:17.298928 #64774] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:39:17 +0200
40
- F, [2018-03-13T08:39:17.299795 #64774] FATAL -- :
41
- Mailgun::Tracking::InvalidSignature (Mailgun::Tracking::InvalidSignature):
42
- lib/mailgun/tracking/signature.rb:16:in `verify!'
43
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
44
- lib/mailgun/tracking/middleware.rb:21:in `call'
45
-
46
-
47
- I, [2018-03-13T08:41:25.137308 #64797] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:41:25 +0200
48
- I, [2018-03-13T08:41:25.142976 #64797] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 08:41:25 +0200
49
- F, [2018-03-13T08:41:25.144406 #64797] FATAL -- :
50
- Mailgun::Tracking::InvalidSignature (my body):
51
- lib/mailgun/tracking/signature.rb:16:in `verify!'
52
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
53
- lib/mailgun/tracking/middleware.rb:21:in `call'
54
-
55
-
56
- I, [2018-03-13T22:25:16.416799 #69766] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:16 +0200
57
- I, [2018-03-13T22:25:16.424802 #69766] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:16 +0200
58
- I, [2018-03-13T22:25:19.501498 #69773] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:19 +0200
59
- I, [2018-03-13T22:25:19.505520 #69773] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:19 +0200
60
- I, [2018-03-13T22:25:22.425417 #69780] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:22 +0200
61
- I, [2018-03-13T22:25:22.429369 #69780] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-03-13 22:25:22 +0200
62
- I, [2018-04-24T23:54:45.990614 #56787] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:45 +0300
63
- I, [2018-04-24T23:54:46.000997 #56787] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:46 +0300
64
- I, [2018-04-24T23:54:51.691821 #56835] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:51 +0300
65
- I, [2018-04-24T23:54:51.703559 #56835] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:51 +0300
66
- I, [2018-04-24T23:54:55.783263 #56885] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:55 +0300
67
- I, [2018-04-24T23:54:55.787896 #56885] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-24 23:54:55 +0300
68
- I, [2018-04-25T00:00:15.262401 #59573] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:00:15 +0300
69
- I, [2018-04-25T00:00:15.268608 #59573] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:00:15 +0300
70
- I, [2018-04-25T00:07:31.673037 #63234] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:07:31 +0300
71
- I, [2018-04-25T00:07:31.682855 #63234] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:07:31 +0300
72
- I, [2018-04-25T00:08:47.589229 #63857] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:08:47 +0300
73
- I, [2018-04-25T00:08:47.596643 #63857] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:08:47 +0300
74
- I, [2018-04-25T00:08:58.855994 #63961] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:08:58 +0300
75
- I, [2018-04-25T00:08:58.863090 #63961] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:08:58 +0300
76
- I, [2018-04-25T00:38:43.511002 #78948] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:38:43 +0300
77
- F, [2018-04-25T00:38:43.512861 #78948] FATAL -- :
78
- F, [2018-04-25T00:38:43.514548 #78948] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007f8ceba814a0>):
79
- F, [2018-04-25T00:38:43.514605 #78948] FATAL -- :
80
- F, [2018-04-25T00:38:43.514635 #78948] FATAL -- : lib/mailgun/tracking/signature.rb:26:in `initialize'
81
- lib/mailgun/tracking/signature.rb:15:in `new'
82
- lib/mailgun/tracking/signature.rb:15:in `verify!'
83
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
84
- lib/mailgun/tracking/middleware.rb:36:in `handle_event'
1
+ # Logfile created on 2019-10-16 14:23:57 +0300 by logger.rb/66358
2
+ I, [2019-10-16T14:23:57.963086 #9298] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 14:23:57 +0300
3
+ I, [2019-10-16T14:23:57.966124 #9298] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 14:23:57 +0300
4
+ I, [2019-10-16T16:59:48.896283 #12252] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 16:59:48 +0300
5
+ I, [2019-10-16T16:59:48.901335 #12252] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 16:59:48 +0300
6
+ I, [2019-10-16T17:00:24.034817 #12268] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:00:24 +0300
7
+ F, [2019-10-16T17:00:24.036968 #12268] FATAL -- :
8
+ NameError (undefined local variable or method `byebug' for #<Mailgun::Tracking::Middleware:0x00007fa1e4122950>):
9
+
10
+ lib/mailgun/tracking/middleware.rb:25:in `_call'
85
11
  lib/mailgun/tracking/middleware.rb:20:in `call'
86
- I, [2018-04-25T00:38:43.547794 #78948] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:38:43 +0300
87
- F, [2018-04-25T00:38:43.549697 #78948] FATAL -- :
88
- F, [2018-04-25T00:38:43.551181 #78948] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007f8cecdae438>):
89
- F, [2018-04-25T00:38:43.551248 #78948] FATAL -- :
90
- F, [2018-04-25T00:38:43.551277 #78948] FATAL -- : lib/mailgun/tracking/signature.rb:26:in `initialize'
91
- lib/mailgun/tracking/signature.rb:15:in `new'
92
- lib/mailgun/tracking/signature.rb:15:in `verify!'
93
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
94
- lib/mailgun/tracking/middleware.rb:36:in `handle_event'
12
+ I, [2019-10-16T17:00:24.064195 #12268] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:00:24 +0300
13
+ F, [2019-10-16T17:00:24.066858 #12268] FATAL -- :
14
+ NameError (undefined local variable or method `byebug' for #<Mailgun::Tracking::Middleware:0x00007fa1e51220d0>):
15
+
16
+ lib/mailgun/tracking/middleware.rb:25:in `_call'
95
17
  lib/mailgun/tracking/middleware.rb:20:in `call'
96
- I, [2018-04-25T00:48:43.869200 #83812] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:48:43 +0300
97
- F, [2018-04-25T00:48:43.870774 #83812] FATAL -- :
98
- F, [2018-04-25T00:48:43.872805 #83812] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
99
- F, [2018-04-25T00:48:43.872870 #83812] FATAL -- :
100
- F, [2018-04-25T00:48:43.872901 #83812] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
101
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
102
- lib/mailgun/tracking/middleware.rb:36:in `handle_event'
18
+ I, [2019-10-16T17:00:40.123028 #12291] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:00:40 +0300
19
+ F, [2019-10-16T17:00:40.132743 #12291] FATAL -- :
20
+ LoadError (cannot load such file -- byebug):
21
+
22
+ lib/mailgun/tracking/middleware.rb:25:in `_call'
103
23
  lib/mailgun/tracking/middleware.rb:20:in `call'
104
- I, [2018-04-25T00:48:43.889608 #83812] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:48:43 +0300
105
- F, [2018-04-25T00:48:43.890865 #83812] FATAL -- :
106
- F, [2018-04-25T00:48:43.893656 #83812] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
107
- F, [2018-04-25T00:48:43.893905 #83812] FATAL -- :
108
- F, [2018-04-25T00:48:43.893958 #83812] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
109
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
110
- lib/mailgun/tracking/middleware.rb:36:in `handle_event'
24
+ I, [2019-10-16T17:00:40.154766 #12291] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:00:40 +0300
25
+ F, [2019-10-16T17:00:40.157648 #12291] FATAL -- :
26
+ LoadError (cannot load such file -- byebug):
27
+
28
+ lib/mailgun/tracking/middleware.rb:25:in `_call'
111
29
  lib/mailgun/tracking/middleware.rb:20:in `call'
112
- I, [2018-04-25T00:53:34.805027 #86157] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:53:34 +0300
113
- F, [2018-04-25T00:53:34.807247 #86157] FATAL -- :
114
- F, [2018-04-25T00:53:34.810283 #86157] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
115
- F, [2018-04-25T00:53:34.810349 #86157] FATAL -- :
116
- F, [2018-04-25T00:53:34.810377 #86157] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
117
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
118
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
119
- lib/mailgun/tracking/middleware.rb:24:in `call'
120
- I, [2018-04-25T00:53:34.843504 #86157] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:53:34 +0300
121
- F, [2018-04-25T00:53:34.844661 #86157] FATAL -- :
122
- F, [2018-04-25T00:53:34.846829 #86157] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
123
- F, [2018-04-25T00:53:34.846880 #86157] FATAL -- :
124
- F, [2018-04-25T00:53:34.846916 #86157] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
125
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
126
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
127
- lib/mailgun/tracking/middleware.rb:24:in `call'
128
- I, [2018-04-25T00:53:52.418577 #86317] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:53:52 +0300
129
- F, [2018-04-25T00:53:52.421746 #86317] FATAL -- :
130
- F, [2018-04-25T00:53:52.422655 #86317] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007f805be0b748>):
131
- F, [2018-04-25T00:53:52.422713 #86317] FATAL -- :
132
- F, [2018-04-25T00:53:52.422754 #86317] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
133
- I, [2018-04-25T00:53:52.440588 #86317] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:53:52 +0300
134
- F, [2018-04-25T00:53:52.442091 #86317] FATAL -- :
135
- F, [2018-04-25T00:53:52.443770 #86317] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007f805bbf0e90>):
136
- F, [2018-04-25T00:53:52.443907 #86317] FATAL -- :
137
- F, [2018-04-25T00:53:52.443978 #86317] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
138
- I, [2018-04-25T00:54:12.690958 #86480] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:54:12 +0300
139
- F, [2018-04-25T00:54:12.693626 #86480] FATAL -- :
140
- F, [2018-04-25T00:54:12.695061 #86480] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007ff19b999e38>):
141
- F, [2018-04-25T00:54:12.695282 #86480] FATAL -- :
142
- F, [2018-04-25T00:54:12.695543 #86480] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
143
- I, [2018-04-25T00:54:12.720314 #86480] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:54:12 +0300
144
- F, [2018-04-25T00:54:12.724327 #86480] FATAL -- :
145
- F, [2018-04-25T00:54:12.726678 #86480] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007ff19aac9728>):
146
- F, [2018-04-25T00:54:12.726765 #86480] FATAL -- :
147
- F, [2018-04-25T00:54:12.726807 #86480] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
148
- I, [2018-04-25T00:54:35.111183 #86674] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:54:35 +0300
149
- F, [2018-04-25T00:54:35.112388 #86674] FATAL -- :
150
- F, [2018-04-25T00:54:35.118882 #86674] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007fc9d6beb2a0>):
151
- F, [2018-04-25T00:54:35.119460 #86674] FATAL -- :
152
- F, [2018-04-25T00:54:35.119694 #86674] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
153
- I, [2018-04-25T00:54:35.162204 #86674] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:54:35 +0300
154
- F, [2018-04-25T00:54:35.163190 #86674] FATAL -- :
155
- F, [2018-04-25T00:54:35.167260 #86674] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007fc9d72497c8>):
156
- F, [2018-04-25T00:54:35.167365 #86674] FATAL -- :
157
- F, [2018-04-25T00:54:35.167403 #86674] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
158
- I, [2018-04-25T00:56:19.898594 #87530] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:56:19 +0300
159
- F, [2018-04-25T00:56:19.899799 #87530] FATAL -- :
160
- F, [2018-04-25T00:56:19.901352 #87530] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007fceee989300>):
161
- F, [2018-04-25T00:56:19.901480 #87530] FATAL -- :
162
- F, [2018-04-25T00:56:19.901564 #87530] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
163
- I, [2018-04-25T00:56:19.920298 #87530] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:56:19 +0300
164
- F, [2018-04-25T00:56:19.921323 #87530] FATAL -- :
165
- F, [2018-04-25T00:56:19.923080 #87530] FATAL -- : NoMethodError (undefined method `fetch' for #<Mailgun::Tracking::Payload:0x007fceee15e630>):
166
- F, [2018-04-25T00:56:19.923140 #87530] FATAL -- :
167
- F, [2018-04-25T00:56:19.923170 #87530] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
168
- I, [2018-04-25T00:56:40.364193 #87701] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:56:40 +0300
169
- F, [2018-04-25T00:56:40.369388 #87701] FATAL -- :
170
- F, [2018-04-25T00:56:40.372063 #87701] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
171
- F, [2018-04-25T00:56:40.372275 #87701] FATAL -- :
172
- F, [2018-04-25T00:56:40.372395 #87701] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
173
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
174
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
175
- lib/mailgun/tracking/middleware.rb:24:in `call'
176
- I, [2018-04-25T00:56:40.397076 #87701] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:56:40 +0300
177
- F, [2018-04-25T00:56:40.410666 #87701] FATAL -- :
178
- F, [2018-04-25T00:56:40.412877 #87701] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
179
- F, [2018-04-25T00:56:40.412945 #87701] FATAL -- :
180
- F, [2018-04-25T00:56:40.412976 #87701] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
181
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
182
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
183
- lib/mailgun/tracking/middleware.rb:24:in `call'
184
- I, [2018-04-25T00:57:36.260230 #88155] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:57:36 +0300
185
- F, [2018-04-25T00:57:36.262725 #88155] FATAL -- :
186
- F, [2018-04-25T00:57:36.265357 #88155] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
187
- F, [2018-04-25T00:57:36.265430 #88155] FATAL -- :
188
- F, [2018-04-25T00:57:36.265463 #88155] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
189
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
190
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
191
- lib/mailgun/tracking/middleware.rb:24:in `call'
192
- I, [2018-04-25T00:57:36.285782 #88155] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 00:57:36 +0300
193
- F, [2018-04-25T00:57:36.286942 #88155] FATAL -- :
194
- F, [2018-04-25T00:57:36.290573 #88155] FATAL -- : NameError (undefined local variable or method `byebug' for Mailgun::Tracking::Signature:Class):
195
- F, [2018-04-25T00:57:36.290683 #88155] FATAL -- :
196
- F, [2018-04-25T00:57:36.290738 #88155] FATAL -- : lib/mailgun/tracking/signature.rb:15:in `verify!'
197
- lib/mailgun/tracking/notifier.rb:49:in `broadcast'
198
- lib/mailgun/tracking/middleware.rb:40:in `handle_event'
199
- lib/mailgun/tracking/middleware.rb:24:in `call'
200
- I, [2018-04-25T01:00:24.482163 #89518] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:00:24 +0300
201
- F, [2018-04-25T01:00:24.483351 #89518] FATAL -- :
202
- F, [2018-04-25T01:00:24.484093 #89518] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007f7fec629350>):
203
- F, [2018-04-25T01:00:24.484132 #89518] FATAL -- :
204
- F, [2018-04-25T01:00:24.484160 #89518] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
205
- I, [2018-04-25T01:00:24.500588 #89518] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:00:24 +0300
206
- F, [2018-04-25T01:00:24.501884 #89518] FATAL -- :
207
- F, [2018-04-25T01:00:24.503478 #89518] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007f7fec98fd00>):
208
- F, [2018-04-25T01:00:24.503569 #89518] FATAL -- :
209
- F, [2018-04-25T01:00:24.503604 #89518] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
210
- I, [2018-04-25T01:06:18.020376 #92376] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:06:18 +0300
211
- F, [2018-04-25T01:06:18.022654 #92376] FATAL -- :
212
- F, [2018-04-25T01:06:18.023686 #92376] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fe17257e8f0>):
213
- F, [2018-04-25T01:06:18.023752 #92376] FATAL -- :
214
- F, [2018-04-25T01:06:18.023782 #92376] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
215
- I, [2018-04-25T01:06:18.046236 #92376] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:06:18 +0300
216
- F, [2018-04-25T01:06:18.050229 #92376] FATAL -- :
217
- F, [2018-04-25T01:06:18.051960 #92376] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fe17227f6e0>):
218
- F, [2018-04-25T01:06:18.052053 #92376] FATAL -- :
219
- F, [2018-04-25T01:06:18.052166 #92376] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
220
- I, [2018-04-25T01:08:11.572026 #93296] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:08:11 +0300
221
- F, [2018-04-25T01:08:11.573663 #93296] FATAL -- :
222
- F, [2018-04-25T01:08:11.574775 #93296] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007faf30b14068>):
223
- F, [2018-04-25T01:08:11.574851 #93296] FATAL -- :
224
- F, [2018-04-25T01:08:11.574881 #93296] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
225
- I, [2018-04-25T01:08:11.616464 #93296] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:08:11 +0300
226
- F, [2018-04-25T01:08:11.618955 #93296] FATAL -- :
227
- F, [2018-04-25T01:08:11.621841 #93296] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007faf3121d0f8>):
228
- F, [2018-04-25T01:08:11.621983 #93296] FATAL -- :
229
- F, [2018-04-25T01:08:11.622034 #93296] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
230
- I, [2018-04-25T01:13:21.005144 #95792] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:13:21 +0300
231
- F, [2018-04-25T01:13:21.006914 #95792] FATAL -- :
232
- F, [2018-04-25T01:13:21.008123 #95792] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fd8ffb037b0>):
233
- F, [2018-04-25T01:13:21.008248 #95792] FATAL -- :
234
- F, [2018-04-25T01:13:21.008302 #95792] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
235
- I, [2018-04-25T01:13:21.038503 #95792] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:13:21 +0300
236
- F, [2018-04-25T01:13:21.039845 #95792] FATAL -- :
237
- F, [2018-04-25T01:13:21.040729 #95792] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fd900937958>):
238
- F, [2018-04-25T01:13:21.040800 #95792] FATAL -- :
239
- F, [2018-04-25T01:13:21.040831 #95792] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
240
- I, [2018-04-25T01:17:15.396272 #97683] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:17:15 +0300
241
- F, [2018-04-25T01:17:15.403730 #97683] FATAL -- :
242
- F, [2018-04-25T01:17:15.405512 #97683] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fcde4c50d78>):
243
- F, [2018-04-25T01:17:15.405604 #97683] FATAL -- :
244
- F, [2018-04-25T01:17:15.405647 #97683] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
245
- I, [2018-04-25T01:17:15.445812 #97683] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:17:15 +0300
246
- F, [2018-04-25T01:17:15.447281 #97683] FATAL -- :
247
- F, [2018-04-25T01:17:15.448444 #97683] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007fcde621f640>):
248
- F, [2018-04-25T01:17:15.448509 #97683] FATAL -- :
249
- F, [2018-04-25T01:17:15.448548 #97683] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
250
- I, [2018-04-25T01:21:59.959527 #107] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:21:59 +0300
251
- F, [2018-04-25T01:21:59.960780 #107] FATAL -- :
252
- F, [2018-04-25T01:21:59.961522 #107] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007ff84c37c6d8>):
253
- F, [2018-04-25T01:21:59.961581 #107] FATAL -- :
254
- F, [2018-04-25T01:21:59.961614 #107] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
255
- I, [2018-04-25T01:21:59.979076 #107] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:21:59 +0300
256
- F, [2018-04-25T01:21:59.980047 #107] FATAL -- :
257
- F, [2018-04-25T01:21:59.980745 #107] FATAL -- : NoMethodError (undefined method `aaaaa' for #<Mailgun::Tracking::Payload:0x007ff84bafc2d8>):
258
- F, [2018-04-25T01:21:59.980776 #107] FATAL -- :
259
- F, [2018-04-25T01:21:59.980798 #107] FATAL -- : lib/mailgun/tracking/middleware.rb:20:in `call'
260
- I, [2018-04-25T01:25:18.509356 #1957] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:25:18 +0300
261
- I, [2018-04-25T01:25:18.512813 #1957] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-25 01:25:18 +0300
262
- I, [2018-04-26T21:42:44.416704 #41944] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-26 21:42:44 +0300
263
- I, [2018-04-26T21:42:44.428936 #41944] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-26 21:42:44 +0300
264
- I, [2018-04-26T22:52:44.142521 #49169] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-26 22:52:44 +0300
265
- I, [2018-04-26T22:52:44.146943 #49169] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2018-04-26 22:52:44 +0300
30
+ I, [2019-10-16T17:01:20.206080 #12320] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:01:20 +0300
31
+ F, [2019-10-16T17:18:16.030799 #12320] FATAL -- :
32
+ SystemExit (exit):
33
+
34
+ (byebug):1:in `exit'
35
+ (byebug):1:in `_call'
36
+ lib/mailgun/tracking/middleware.rb:29:in `_call'
37
+ lib/mailgun/tracking/middleware.rb:22:in `call'
38
+ I, [2019-10-16T17:18:16.198543 #12320] INFO -- : Started POST "/mailgun" for 127.0.0.1 at 2019-10-16 17:18:16 +0300
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'sinatra/base'
2
4
 
3
5
  module Dummy
@@ -1,4 +1,5 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
+
2
3
  require 'dummy/rack/application'
3
4
 
4
5
  RSpec.describe 'Rack', type: :integration do
@@ -1,4 +1,5 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
+
2
3
  require 'dummy/rails/application'
3
4
 
4
5
  RSpec.describe 'Rails', type: :integration do
@@ -1,4 +1,5 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
+
2
3
  require 'dummy/sinatra/application'
3
4
 
4
5
  RSpec.describe 'Sinatra', type: :integration do
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Configuration do
4
4
  subject(:configuration) { described_class.instance }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Listener do
4
4
  subject(:listener) { described_class.new }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Middleware do
4
4
  subject(:rack) { described_class.new(app) }
@@ -23,6 +23,7 @@ RSpec.describe Mailgun::Tracking::Middleware do
23
23
  end
24
24
 
25
25
  it { expect(rack.call(env)).to include(200) }
26
+
26
27
  it do
27
28
  rack.call(env)
28
29
  expect(Mailgun::Tracking).not_to have_received(:notifier)
@@ -39,6 +40,7 @@ RSpec.describe Mailgun::Tracking::Middleware do
39
40
  end
40
41
 
41
42
  it { expect(rack.call(env)).to include(400) }
43
+
42
44
  it do
43
45
  rack.call(env)
44
46
  expect(Mailgun::Tracking).to have_received(:notifier)
@@ -55,6 +57,7 @@ RSpec.describe Mailgun::Tracking::Middleware do
55
57
  end
56
58
 
57
59
  it { expect(rack.call(env)).to include(200) }
60
+
58
61
  it do
59
62
  rack.call(env)
60
63
  expect(Mailgun::Tracking).to have_received(:notifier)
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Notifier do
4
4
  subject(:notifier) { described_class.new(listener) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Payload do
4
4
  subject(:payload) { described_class.new(options) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Request do
4
4
  subject(:request) { described_class.new(env) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Signature do
4
4
  subject(:signature) { described_class.new(payload) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Subscriber::AllMessages do
4
4
  subject(:subscriber) { described_class.new(callable) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Subscriber::Evented do
4
4
  subject(:subscriber) { described_class.new('delivered', callable) }
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Subscriber do
4
4
  describe '.for' do
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Util do
4
4
  describe '.normalize' do
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking::Version do
4
4
  before do
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  RSpec.describe Mailgun::Tracking do
4
4
  it { is_expected.to respond_to(:api_key) }
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rack/test'
2
4
  require 'bundler/setup'
3
5
  require 'mailgun/tracking'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'json'
2
4
 
3
5
  class FixtureFinder
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RackHelpers
2
4
  def env_for(url, options = {})
3
5
  Rack::MockRequest.env_for(url, options)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  class Delivered
2
4
  def call(payload); end
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  RSpec.shared_examples 'subscriber' do
2
4
  describe '#call' do
3
5
  let(:callable) { proc {} }
@@ -1,5 +1,9 @@
1
- require 'simplecov'
1
+ # frozen_string_literal: true
2
2
 
3
- SimpleCov.start do
4
- add_filter('integration')
3
+ if ENV['COVERAGE'] == 'true'
4
+ require 'simplecov'
5
+
6
+ SimpleCov.start do
7
+ add_filter('integration')
8
+ end
5
9
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailgun-tracking
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artem Chubchenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-05-11 00:00:00.000000000 Z
11
+ date: 2019-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rack
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 1.6.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 1.6.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: appraisal
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -39,115 +53,103 @@ dependencies:
39
53
  - !ruby/object:Gem::Version
40
54
  version: '1.16'
41
55
  - !ruby/object:Gem::Dependency
42
- name: codeclimate-test-reporter
56
+ name: rack-test
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '1.0'
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: 1.0.8
61
+ version: '0'
51
62
  type: :development
52
63
  prerelease: false
53
64
  version_requirements: !ruby/object:Gem::Requirement
54
65
  requirements:
55
66
  - - "~>"
56
67
  - !ruby/object:Gem::Version
57
- version: '1.0'
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: 1.0.8
68
+ version: '0'
61
69
  - !ruby/object:Gem::Dependency
62
- name: rack-test
70
+ name: rake
63
71
  requirement: !ruby/object:Gem::Requirement
64
72
  requirements:
65
73
  - - "~>"
66
74
  - !ruby/object:Gem::Version
67
- version: '0'
75
+ version: '13.0'
68
76
  type: :development
69
77
  prerelease: false
70
78
  version_requirements: !ruby/object:Gem::Requirement
71
79
  requirements:
72
80
  - - "~>"
73
81
  - !ruby/object:Gem::Version
74
- version: '0'
82
+ version: '13.0'
75
83
  - !ruby/object:Gem::Dependency
76
- name: rake
84
+ name: rspec
77
85
  requirement: !ruby/object:Gem::Requirement
78
86
  requirements:
79
87
  - - "~>"
80
88
  - !ruby/object:Gem::Version
81
- version: '10.0'
89
+ version: '3.7'
82
90
  type: :development
83
91
  prerelease: false
84
92
  version_requirements: !ruby/object:Gem::Requirement
85
93
  requirements:
86
94
  - - "~>"
87
95
  - !ruby/object:Gem::Version
88
- version: '10.0'
96
+ version: '3.7'
89
97
  - !ruby/object:Gem::Dependency
90
- name: rspec
98
+ name: rubocop
91
99
  requirement: !ruby/object:Gem::Requirement
92
100
  requirements:
93
101
  - - "~>"
94
102
  - !ruby/object:Gem::Version
95
- version: '3.7'
103
+ version: 0.75.1
96
104
  type: :development
97
105
  prerelease: false
98
106
  version_requirements: !ruby/object:Gem::Requirement
99
107
  requirements:
100
108
  - - "~>"
101
109
  - !ruby/object:Gem::Version
102
- version: '3.7'
110
+ version: 0.75.1
103
111
  - !ruby/object:Gem::Dependency
104
- name: rubocop
112
+ name: rubocop-performance
105
113
  requirement: !ruby/object:Gem::Requirement
106
114
  requirements:
107
115
  - - "~>"
108
116
  - !ruby/object:Gem::Version
109
- version: 0.55.0
117
+ version: '1.5'
110
118
  type: :development
111
119
  prerelease: false
112
120
  version_requirements: !ruby/object:Gem::Requirement
113
121
  requirements:
114
122
  - - "~>"
115
123
  - !ruby/object:Gem::Version
116
- version: 0.55.0
124
+ version: '1.5'
117
125
  - !ruby/object:Gem::Dependency
118
126
  name: rubocop-rspec
119
127
  requirement: !ruby/object:Gem::Requirement
120
128
  requirements:
121
129
  - - "~>"
122
130
  - !ruby/object:Gem::Version
123
- version: '1.25'
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- version: 1.25.1
131
+ version: '1.36'
127
132
  type: :development
128
133
  prerelease: false
129
134
  version_requirements: !ruby/object:Gem::Requirement
130
135
  requirements:
131
136
  - - "~>"
132
137
  - !ruby/object:Gem::Version
133
- version: '1.25'
134
- - - ">="
135
- - !ruby/object:Gem::Version
136
- version: 1.25.1
138
+ version: '1.36'
137
139
  - !ruby/object:Gem::Dependency
138
140
  name: simplecov
139
141
  requirement: !ruby/object:Gem::Requirement
140
142
  requirements:
141
143
  - - "~>"
142
144
  - !ruby/object:Gem::Version
143
- version: 0.12.0
145
+ version: 0.17.1
144
146
  type: :development
145
147
  prerelease: false
146
148
  version_requirements: !ruby/object:Gem::Requirement
147
149
  requirements:
148
150
  - - "~>"
149
151
  - !ruby/object:Gem::Version
150
- version: 0.12.0
152
+ version: 0.17.1
151
153
  description: Integration with Mailgun Webhooks
152
154
  email:
153
155
  - artem.chubchenko@gmail.com
@@ -211,15 +213,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
211
213
  requirements:
212
214
  - - ">="
213
215
  - !ruby/object:Gem::Version
214
- version: 2.2.0
216
+ version: 2.4.0
215
217
  required_rubygems_version: !ruby/object:Gem::Requirement
216
218
  requirements:
217
219
  - - ">="
218
220
  - !ruby/object:Gem::Version
219
221
  version: '0'
220
222
  requirements: []
221
- rubyforge_project:
222
- rubygems_version: 2.6.12
223
+ rubygems_version: 3.0.6
223
224
  signing_key:
224
225
  specification_version: 4
225
226
  summary: Integration with Mailgun Webhooks