test_track_rails_client 0.9.6 → 0.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ ZDE4YzcwZWEyYjdlYjJhM2NkZDVjYjEyOGUwNzJiNzQyNWEwNGRlOQ==
5
+ data.tar.gz: !binary |-
6
+ MTkyNjFkM2E4ODczYTM3Mjc0ZDA1NTk3Mzc1NTI1YTBhNTZhZmJmMA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ NmFkNGQ5NzBjYjk0N2RlMjI2MWFiMmNhOGQ0M2RjNmFlOTczMDlmN2FlYzIw
10
+ MjQ2ZWU3NDZiOWI0MjFmYzhmZDQ0M2Y3Zjk0YjI5MDQ0MTE2Mzg0YjdhMTk2
11
+ MmVhZDg1MjdkZmQwYTI1OGMzODBmYmE2MGQ0YzYyOTE0N2VjZmU=
12
+ data.tar.gz: !binary |-
13
+ MWFkOGM2MDcwMjQ0Yzc3OGQ4NTU5YTQ1ODI1ZGUwOTJjYjMwYjFhYWZiNzIz
14
+ NTNkOGU2Y2QxNTRlMTI2NWVhMDAyZDk2YjkxOTdmNDZlYmQyMmQ4Mjc1MjQx
15
+ YjVkNjMyZDc0ZTE1ZDlhYzcyM2YyMzhjOTFjNGQ2MmQyNTU5YmU=
data/Rakefile CHANGED
@@ -36,7 +36,7 @@ task :vendor_deps do
36
36
  FileUtils.module_eval do
37
37
  cd "vendor/gems" do
38
38
  rm_r Dir.glob('*')
39
- %w(ruby_spec_helpers her fakeable_her).each do |repo|
39
+ %w(ruby_spec_helpers her fakeable_her publicsuffix-ruby).each do |repo|
40
40
  `git clone --depth=1 git@github.com:Betterment/#{repo}.git && rm -rf #{repo}/.git`
41
41
  end
42
42
  end
@@ -19,7 +19,7 @@ class TestTrack::ABConfiguration
19
19
  private
20
20
 
21
21
  def build_variant_hash
22
- airbrake_because_ab("configures split with more than 2 variants") if split_variants && split_variants.size > 2
22
+ notify_because_ab("configures split with more than 2 variants") if split_variants && split_variants.size > 2
23
23
  { true: true_variant, false: false_variant }
24
24
  end
25
25
 
@@ -45,9 +45,11 @@ class TestTrack::ABConfiguration
45
45
  split_variants - [true_variant.to_s] if split_variants
46
46
  end
47
47
 
48
- def airbrake_because_ab(msg)
49
- msg = "A/B for \"#{split_name}\" #{msg}"
50
- Rails.logger.error(msg)
51
- Airbrake.notify_or_ignore(msg)
48
+ def notify_because_ab(msg)
49
+ misconfiguration_notifier.notify("A/B for \"#{split_name}\" #{msg}")
50
+ end
51
+
52
+ def misconfiguration_notifier
53
+ @misconfiguration_notifier ||= TestTrack::MisconfigurationNotifier.new
52
54
  end
53
55
  end
@@ -0,0 +1,11 @@
1
+ class TestTrack::MisconfigurationNotifier
2
+ def notify(msg)
3
+ Rails.logger.error(msg)
4
+
5
+ if Airbrake.respond_to?(:notify_or_ignore)
6
+ Airbrake.notify_or_ignore(msg)
7
+ else
8
+ Airbrake.notify(msg)
9
+ end
10
+ end
11
+ end
@@ -37,9 +37,12 @@ class TestTrack::VaryDSL
37
37
  @split_variants ||= split.keys if split_registry
38
38
  end
39
39
 
40
- def airbrake_because_vary(msg)
41
- Rails.logger.error(msg)
42
- Airbrake.notify_or_ignore("vary for \"#{split_name}\" #{msg}")
40
+ def notify_because_vary(msg)
41
+ misconfiguration_notifier.notify("vary for \"#{split_name}\" #{msg}")
42
+ end
43
+
44
+ def misconfiguration_notifier
45
+ @misconfiguration_notifier ||= TestTrack::MisconfigurationNotifier.new
43
46
  end
44
47
 
45
48
  def variant_behaviors
@@ -50,7 +53,7 @@ class TestTrack::VaryDSL
50
53
  variant = variant.to_s
51
54
 
52
55
  raise ArgumentError, "must provide block for #{variant}" unless behavior_proc
53
- airbrake_because_vary "configures unknown variant \"#{variant}\"" unless variant_acceptable?(variant)
56
+ notify_because_vary "configures unknown variant \"#{variant}\"" unless variant_acceptable?(variant)
54
57
 
55
58
  variant_behaviors[variant] = behavior_proc
56
59
  variant
@@ -83,6 +86,6 @@ class TestTrack::VaryDSL
83
86
  raise ArgumentError, "must provide at least one `when`" unless variant_behaviors.size >= 2
84
87
  return true unless split_variants
85
88
  missing_variants = split_variants - variant_behaviors.keys
86
- airbrake_because_vary("does not configure variants #{missing_variants.to_sentence}") && false unless missing_variants.empty?
89
+ notify_because_vary("does not configure variants #{missing_variants.to_sentence}") && false unless missing_variants.empty?
87
90
  end
88
91
  end
data/lib/test_track.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # Source vendored gems the hard way in all environments
2
- %w(her fakeable_her).each do |gem_name|
2
+ %w(her fakeable_her public_suffix).each do |gem_name|
3
3
  lib = File.expand_path("../../vendor/gems/#{gem_name}/lib", __FILE__)
4
4
  $LOAD_PATH.push(lib) unless $LOAD_PATH.include?(lib)
5
5
  require gem_name
@@ -1,6 +1,8 @@
1
- require 'airbrake'
2
1
  require 'delayed_job'
3
- require 'delayed-plugins-airbrake'
2
+ require 'airbrake'
3
+ unless defined?(Delayed::Plugins::Airbrake) && Delayed::Worker.plugins.include?(Delayed::Plugins::Airbrake)
4
+ require 'delayed-plugins-airbrake'
5
+ end
4
6
  require 'test_track'
5
7
 
6
8
  module TestTrackRailsClient
@@ -1,3 +1,3 @@
1
1
  module TestTrackRailsClient
2
- VERSION = "0.9.6" # rubocop:disable Style/MutableConstant
2
+ VERSION = "0.9.7" # rubocop:disable Style/MutableConstant
3
3
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test_track_rails_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.6
5
- prerelease:
4
+ version: 0.9.7
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ryan O'Neill
@@ -14,28 +13,31 @@ authors:
14
13
  autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
- date: 2016-10-24 00:00:00.000000000 Z
16
+ date: 2016-10-25 00:00:00.000000000 Z
18
17
  dependencies:
19
18
  - !ruby/object:Gem::Dependency
20
19
  name: rails
21
20
  requirement: !ruby/object:Gem::Requirement
22
- none: false
23
21
  requirements:
24
- - - ~>
22
+ - - ! '>='
25
23
  - !ruby/object:Gem::Version
26
24
  version: '4.1'
25
+ - - <
26
+ - !ruby/object:Gem::Version
27
+ version: '6.0'
27
28
  type: :runtime
28
29
  prerelease: false
29
30
  version_requirements: !ruby/object:Gem::Requirement
30
- none: false
31
31
  requirements:
32
- - - ~>
32
+ - - ! '>='
33
33
  - !ruby/object:Gem::Version
34
34
  version: '4.1'
35
+ - - <
36
+ - !ruby/object:Gem::Version
37
+ version: '6.0'
35
38
  - !ruby/object:Gem::Dependency
36
39
  name: faraday
37
40
  requirement: !ruby/object:Gem::Requirement
38
- none: false
39
41
  requirements:
40
42
  - - ! '>='
41
43
  - !ruby/object:Gem::Version
@@ -46,7 +48,6 @@ dependencies:
46
48
  type: :runtime
47
49
  prerelease: false
48
50
  version_requirements: !ruby/object:Gem::Requirement
49
- none: false
50
51
  requirements:
51
52
  - - ! '>='
52
53
  - !ruby/object:Gem::Version
@@ -57,7 +58,6 @@ dependencies:
57
58
  - !ruby/object:Gem::Dependency
58
59
  name: faraday_middleware
59
60
  requirement: !ruby/object:Gem::Requirement
60
- none: false
61
61
  requirements:
62
62
  - - ! '>='
63
63
  - !ruby/object:Gem::Version
@@ -65,7 +65,6 @@ dependencies:
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
- none: false
69
68
  requirements:
70
69
  - - ! '>='
71
70
  - !ruby/object:Gem::Version
@@ -73,7 +72,6 @@ dependencies:
73
72
  - !ruby/object:Gem::Dependency
74
73
  name: public_suffix
75
74
  requirement: !ruby/object:Gem::Requirement
76
- none: false
77
75
  requirements:
78
76
  - - ~>
79
77
  - !ruby/object:Gem::Version
@@ -81,7 +79,6 @@ dependencies:
81
79
  type: :runtime
82
80
  prerelease: false
83
81
  version_requirements: !ruby/object:Gem::Requirement
84
- none: false
85
82
  requirements:
86
83
  - - ~>
87
84
  - !ruby/object:Gem::Version
@@ -89,7 +86,6 @@ dependencies:
89
86
  - !ruby/object:Gem::Dependency
90
87
  name: mixpanel-ruby
91
88
  requirement: !ruby/object:Gem::Requirement
92
- none: false
93
89
  requirements:
94
90
  - - ~>
95
91
  - !ruby/object:Gem::Version
@@ -97,7 +93,6 @@ dependencies:
97
93
  type: :runtime
98
94
  prerelease: false
99
95
  version_requirements: !ruby/object:Gem::Requirement
100
- none: false
101
96
  requirements:
102
97
  - - ~>
103
98
  - !ruby/object:Gem::Version
@@ -105,7 +100,6 @@ dependencies:
105
100
  - !ruby/object:Gem::Dependency
106
101
  name: delayed_job
107
102
  requirement: !ruby/object:Gem::Requirement
108
- none: false
109
103
  requirements:
110
104
  - - ~>
111
105
  - !ruby/object:Gem::Version
@@ -113,7 +107,6 @@ dependencies:
113
107
  type: :runtime
114
108
  prerelease: false
115
109
  version_requirements: !ruby/object:Gem::Requirement
116
- none: false
117
110
  requirements:
118
111
  - - ~>
119
112
  - !ruby/object:Gem::Version
@@ -121,7 +114,6 @@ dependencies:
121
114
  - !ruby/object:Gem::Dependency
122
115
  name: delayed_job_active_record
123
116
  requirement: !ruby/object:Gem::Requirement
124
- none: false
125
117
  requirements:
126
118
  - - ! '>='
127
119
  - !ruby/object:Gem::Version
@@ -129,7 +121,6 @@ dependencies:
129
121
  type: :runtime
130
122
  prerelease: false
131
123
  version_requirements: !ruby/object:Gem::Requirement
132
- none: false
133
124
  requirements:
134
125
  - - ! '>='
135
126
  - !ruby/object:Gem::Version
@@ -137,23 +128,20 @@ dependencies:
137
128
  - !ruby/object:Gem::Dependency
138
129
  name: airbrake
139
130
  requirement: !ruby/object:Gem::Requirement
140
- none: false
141
131
  requirements:
142
- - - ~>
132
+ - - ! '>='
143
133
  - !ruby/object:Gem::Version
144
134
  version: '4.1'
145
135
  type: :runtime
146
136
  prerelease: false
147
137
  version_requirements: !ruby/object:Gem::Requirement
148
- none: false
149
138
  requirements:
150
- - - ~>
139
+ - - ! '>='
151
140
  - !ruby/object:Gem::Version
152
141
  version: '4.1'
153
142
  - !ruby/object:Gem::Dependency
154
143
  name: delayed-plugins-airbrake
155
144
  requirement: !ruby/object:Gem::Requirement
156
- none: false
157
145
  requirements:
158
146
  - - ! '>='
159
147
  - !ruby/object:Gem::Version
@@ -161,7 +149,6 @@ dependencies:
161
149
  type: :runtime
162
150
  prerelease: false
163
151
  version_requirements: !ruby/object:Gem::Requirement
164
- none: false
165
152
  requirements:
166
153
  - - ! '>='
167
154
  - !ruby/object:Gem::Version
@@ -169,7 +156,6 @@ dependencies:
169
156
  - !ruby/object:Gem::Dependency
170
157
  name: request_store
171
158
  requirement: !ruby/object:Gem::Requirement
172
- none: false
173
159
  requirements:
174
160
  - - ~>
175
161
  - !ruby/object:Gem::Version
@@ -177,7 +163,6 @@ dependencies:
177
163
  type: :runtime
178
164
  prerelease: false
179
165
  version_requirements: !ruby/object:Gem::Requirement
180
- none: false
181
166
  requirements:
182
167
  - - ~>
183
168
  - !ruby/object:Gem::Version
@@ -185,7 +170,6 @@ dependencies:
185
170
  - !ruby/object:Gem::Dependency
186
171
  name: pry-rails
187
172
  requirement: !ruby/object:Gem::Requirement
188
- none: false
189
173
  requirements:
190
174
  - - ! '>='
191
175
  - !ruby/object:Gem::Version
@@ -193,7 +177,6 @@ dependencies:
193
177
  type: :development
194
178
  prerelease: false
195
179
  version_requirements: !ruby/object:Gem::Requirement
196
- none: false
197
180
  requirements:
198
181
  - - ! '>='
199
182
  - !ruby/object:Gem::Version
@@ -201,7 +184,6 @@ dependencies:
201
184
  - !ruby/object:Gem::Dependency
202
185
  name: timecop
203
186
  requirement: !ruby/object:Gem::Requirement
204
- none: false
205
187
  requirements:
206
188
  - - ! '>='
207
189
  - !ruby/object:Gem::Version
@@ -209,7 +191,6 @@ dependencies:
209
191
  type: :development
210
192
  prerelease: false
211
193
  version_requirements: !ruby/object:Gem::Requirement
212
- none: false
213
194
  requirements:
214
195
  - - ! '>='
215
196
  - !ruby/object:Gem::Version
@@ -217,7 +198,6 @@ dependencies:
217
198
  - !ruby/object:Gem::Dependency
218
199
  name: rubocop
219
200
  requirement: !ruby/object:Gem::Requirement
220
- none: false
221
201
  requirements:
222
202
  - - ! '>='
223
203
  - !ruby/object:Gem::Version
@@ -225,7 +205,6 @@ dependencies:
225
205
  type: :development
226
206
  prerelease: false
227
207
  version_requirements: !ruby/object:Gem::Requirement
228
- none: false
229
208
  requirements:
230
209
  - - ! '>='
231
210
  - !ruby/object:Gem::Version
@@ -233,7 +212,6 @@ dependencies:
233
212
  - !ruby/object:Gem::Dependency
234
213
  name: webmock
235
214
  requirement: !ruby/object:Gem::Requirement
236
- none: false
237
215
  requirements:
238
216
  - - ! '>='
239
217
  - !ruby/object:Gem::Version
@@ -241,7 +219,6 @@ dependencies:
241
219
  type: :development
242
220
  prerelease: false
243
221
  version_requirements: !ruby/object:Gem::Requirement
244
- none: false
245
222
  requirements:
246
223
  - - ! '>='
247
224
  - !ruby/object:Gem::Version
@@ -253,6 +230,9 @@ executables: []
253
230
  extensions: []
254
231
  extra_rdoc_files: []
255
232
  files:
233
+ - LICENSE
234
+ - README.md
235
+ - Rakefile
256
236
  - app/assets/javascripts/testTrack.bundle.min.js
257
237
  - app/controllers/concerns/test_track/controller.rb
258
238
  - app/controllers/tt/api/v1/application_controller.rb
@@ -278,6 +258,7 @@ files:
278
258
  - app/models/test_track/fake/visitor.rb
279
259
  - app/models/test_track/fake_server.rb
280
260
  - app/models/test_track/identity_session_discriminator.rb
261
+ - app/models/test_track/misconfiguration_notifier.rb
281
262
  - app/models/test_track/notify_assignment_job.rb
282
263
  - app/models/test_track/offline_session.rb
283
264
  - app/models/test_track/remote/assignment.rb
@@ -304,40 +285,33 @@ files:
304
285
  - lib/generators/test_track/migration_generator.rb
305
286
  - lib/tasks/test_track_rails_client_tasks.rake
306
287
  - lib/test_track.rb
288
+ - lib/test_track_rails_client.rb
307
289
  - lib/test_track_rails_client/assignment_helper.rb
308
290
  - lib/test_track_rails_client/engine.rb
309
291
  - lib/test_track_rails_client/rspec_helpers.rb
310
292
  - lib/test_track_rails_client/version.rb
311
- - lib/test_track_rails_client.rb
312
- - LICENSE
313
- - Rakefile
314
- - README.md
315
293
  homepage: https://github.com/Betterment
316
294
  licenses:
317
295
  - MIT
296
+ metadata: {}
318
297
  post_install_message:
319
298
  rdoc_options: []
320
299
  require_paths:
321
300
  - lib
322
301
  required_ruby_version: !ruby/object:Gem::Requirement
323
- none: false
324
302
  requirements:
325
303
  - - ! '>='
326
304
  - !ruby/object:Gem::Version
327
305
  version: 1.9.3
328
306
  required_rubygems_version: !ruby/object:Gem::Requirement
329
- none: false
330
307
  requirements:
331
308
  - - ! '>='
332
309
  - !ruby/object:Gem::Version
333
310
  version: '0'
334
- segments:
335
- - 0
336
- hash: -2216407161491829239
337
311
  requirements: []
338
312
  rubyforge_project:
339
- rubygems_version: 1.8.23.2
313
+ rubygems_version: 2.6.7
340
314
  signing_key:
341
- specification_version: 3
315
+ specification_version: 4
342
316
  summary: Rails client for TestTrack
343
317
  test_files: []