vanity 1.3.0 → 1.4.0.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. data/CHANGELOG +61 -3
  2. data/Gemfile +22 -14
  3. data/README.rdoc +9 -4
  4. data/Rakefile +72 -12
  5. data/bin/vanity +16 -4
  6. data/lib/vanity.rb +7 -5
  7. data/lib/vanity/adapters/abstract_adapter.rb +135 -0
  8. data/lib/vanity/adapters/mock_adapter.rb +157 -0
  9. data/lib/vanity/adapters/mongo_adapter.rb +162 -0
  10. data/lib/vanity/adapters/redis_adapter.rb +154 -0
  11. data/lib/vanity/backport.rb +0 -17
  12. data/lib/vanity/commands/upgrade.rb +34 -0
  13. data/lib/vanity/experiment/ab_test.rb +46 -41
  14. data/lib/vanity/experiment/base.rb +13 -15
  15. data/lib/vanity/frameworks/rails.rb +5 -9
  16. data/lib/vanity/metric/active_record.rb +10 -4
  17. data/lib/vanity/metric/base.rb +46 -23
  18. data/lib/vanity/metric/google_analytics.rb +7 -0
  19. data/lib/vanity/metric/remote.rb +53 -0
  20. data/lib/vanity/playground.rb +133 -49
  21. data/test/{ab_test_test.rb → experiment/ab_test.rb} +47 -3
  22. data/test/{experiment_test.rb → experiment/base_test.rb} +8 -8
  23. data/test/metric/active_record_test.rb +253 -0
  24. data/test/metric/base_test.rb +293 -0
  25. data/test/metric/google_analytics_test.rb +104 -0
  26. data/test/metric/remote_test.rb +108 -0
  27. data/test/myapp/app/controllers/application_controller.rbc +66 -0
  28. data/test/myapp/app/controllers/main_controller.rb +3 -3
  29. data/test/myapp/app/controllers/main_controller.rbc +347 -0
  30. data/test/myapp/config/boot.rbc +2534 -0
  31. data/test/myapp/config/environment.rbc +403 -0
  32. data/test/myapp/config/routes.rbc +174 -0
  33. data/test/myapp/log/production.log +2601 -0
  34. data/test/passenger_test.rb +14 -5
  35. data/test/passenger_test.rbc +0 -0
  36. data/test/playground_test.rbc +256 -0
  37. data/test/rails_test.rb +75 -22
  38. data/test/rails_test.rbc +4086 -0
  39. data/test/test_helper.rb +30 -7
  40. data/test/test_helper.rbc +4297 -0
  41. data/vanity.gemspec +6 -2
  42. metadata +74 -73
  43. data/lib/vanity/commands.rb +0 -2
  44. data/lib/vanity/mock_redis.rb +0 -76
  45. data/test/metric_test.rb +0 -622
  46. data/vendor/cache/RedCloth-4.2.2.gem +0 -0
  47. data/vendor/cache/actionmailer-2.3.5.gem +0 -0
  48. data/vendor/cache/actionpack-2.3.5.gem +0 -0
  49. data/vendor/cache/activerecord-2.3.5.gem +0 -0
  50. data/vendor/cache/activeresource-2.3.5.gem +0 -0
  51. data/vendor/cache/activesupport-2.3.5.gem +0 -0
  52. data/vendor/cache/autotest-4.2.7.gem +0 -0
  53. data/vendor/cache/autotest-fsevent-0.2.1.gem +0 -0
  54. data/vendor/cache/autotest-growl-0.2.0.gem +0 -0
  55. data/vendor/cache/bundler-0.9.7.gem +0 -0
  56. data/vendor/cache/classifier-1.3.1.gem +0 -0
  57. data/vendor/cache/directory_watcher-1.3.1.gem +0 -0
  58. data/vendor/cache/fastthread-1.0.7.gem +0 -0
  59. data/vendor/cache/garb-0.7.0.gem +0 -0
  60. data/vendor/cache/happymapper-0.3.0.gem +0 -0
  61. data/vendor/cache/jekyll-0.5.7.gem +0 -0
  62. data/vendor/cache/libxml-ruby-1.1.3.gem +0 -0
  63. data/vendor/cache/liquid-2.0.0.gem +0 -0
  64. data/vendor/cache/maruku-0.6.0.gem +0 -0
  65. data/vendor/cache/mocha-0.9.8.gem +0 -0
  66. data/vendor/cache/open4-1.0.1.gem +0 -0
  67. data/vendor/cache/passenger-2.2.9.gem +0 -0
  68. data/vendor/cache/rack-1.0.1.gem +0 -0
  69. data/vendor/cache/rails-2.3.5.gem +0 -0
  70. data/vendor/cache/rake-0.8.7.gem +0 -0
  71. data/vendor/cache/rubygems-update-1.3.5.gem +0 -0
  72. data/vendor/cache/shoulda-2.10.3.gem +0 -0
  73. data/vendor/cache/sqlite3-ruby-1.2.5.gem +0 -0
  74. data/vendor/cache/stemmer-1.0.1.gem +0 -0
  75. data/vendor/cache/syntax-1.0.0.gem +0 -0
  76. data/vendor/cache/sys-uname-0.8.4.gem +0 -0
  77. data/vendor/cache/timecop-0.3.4.gem +0 -0
  78. data/vendor/redis-rb/LICENSE +0 -20
  79. data/vendor/redis-rb/README.markdown +0 -36
  80. data/vendor/redis-rb/Rakefile +0 -62
  81. data/vendor/redis-rb/bench.rb +0 -44
  82. data/vendor/redis-rb/benchmarking/suite.rb +0 -24
  83. data/vendor/redis-rb/benchmarking/worker.rb +0 -71
  84. data/vendor/redis-rb/bin/distredis +0 -33
  85. data/vendor/redis-rb/examples/basic.rb +0 -16
  86. data/vendor/redis-rb/examples/incr-decr.rb +0 -18
  87. data/vendor/redis-rb/examples/list.rb +0 -26
  88. data/vendor/redis-rb/examples/sets.rb +0 -36
  89. data/vendor/redis-rb/lib/dist_redis.rb +0 -124
  90. data/vendor/redis-rb/lib/hash_ring.rb +0 -128
  91. data/vendor/redis-rb/lib/pipeline.rb +0 -21
  92. data/vendor/redis-rb/lib/redis.rb +0 -370
  93. data/vendor/redis-rb/lib/redis/raketasks.rb +0 -1
  94. data/vendor/redis-rb/profile.rb +0 -22
  95. data/vendor/redis-rb/redis-rb.gemspec +0 -30
  96. data/vendor/redis-rb/spec/redis_spec.rb +0 -637
  97. data/vendor/redis-rb/spec/spec_helper.rb +0 -4
  98. data/vendor/redis-rb/speed.rb +0 -16
  99. data/vendor/redis-rb/tasks/redis.tasks.rb +0 -140
@@ -3,8 +3,13 @@ require "phusion_passenger/spawn_manager"
3
3
 
4
4
  class PassengerTest < Test::Unit::TestCase
5
5
  def setup
6
+ super
6
7
  ActiveRecord::Base.connection.disconnect! # Otherwise AR metric tests fail
7
- @original = Vanity.playground.redis
8
+ @original = Vanity.playground.connection
9
+ File.unlink "test/myapp/config/vanity.yml" rescue nil
10
+ File.open("test/myapp/config/vanity.yml", "w") do |io|
11
+ io.write "production: #{Vanity.playground.connection}"
12
+ end
8
13
  @server = PhusionPassenger::SpawnManager.new
9
14
  @server.start
10
15
  Thread.pass until @server.started?
@@ -14,21 +19,25 @@ class PassengerTest < Test::Unit::TestCase
14
19
 
15
20
  def test_reconnect
16
21
  sleep 0.1
17
- socket = TCPSocket.new(*@app.listen_socket_name.split(":"))
22
+ case @app.listen_socket_type
23
+ when "tcp" ; socket = TCPSocket.new(*@app.listen_socket_name.split(":"))
24
+ when "unix"; socket = UNIXSocket.new(@app.listen_socket_name)
25
+ else fail
26
+ end
18
27
  channel = PhusionPassenger::MessageChannel.new(socket)
19
28
  request = {"REQUEST_PATH"=>"/", "REQUEST_METHOD"=>"GET", "QUERY_STRING"=>" "}
20
29
  channel.write_scalar request.to_a.join("\0")
21
30
  response = socket.read.split("\r\n\r\n").last
22
31
  socket.close
23
-
24
- server, obj_id = response.split("\n")
25
- assert_equal @original.server, server
32
+ conn, obj_id = response.split("\n")
33
+ assert_equal @original.to_s, conn
26
34
  assert_not_equal @original.object_id.to_s, obj_id
27
35
  end
28
36
 
29
37
  def teardown
30
38
  super
31
39
  @server.stop
40
+ File.unlink "test/myapp/config/vanity.yml"
32
41
  end
33
42
 
34
43
  end
Binary file
@@ -0,0 +1,256 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 44
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 99
23
+ 7
24
+ 2
25
+ 45
26
+ 3
27
+ 4
28
+ 43
29
+ 5
30
+ 43
31
+ 6
32
+ 65
33
+ 49
34
+ 7
35
+ 3
36
+ 13
37
+ 99
38
+ 12
39
+ 7
40
+ 8
41
+ 12
42
+ 7
43
+ 9
44
+ 12
45
+ 65
46
+ 12
47
+ 49
48
+ 10
49
+ 4
50
+ 15
51
+ 49
52
+ 8
53
+ 0
54
+ 15
55
+ 2
56
+ 11
57
+ I
58
+ 6
59
+ I
60
+ 0
61
+ I
62
+ 0
63
+ I
64
+ 0
65
+ n
66
+ p
67
+ 11
68
+ s
69
+ 16
70
+ test/test_helper
71
+ x
72
+ 7
73
+ require
74
+ x
75
+ 14
76
+ PlaygroundTest
77
+ x
78
+ 4
79
+ Test
80
+ n
81
+ x
82
+ 4
83
+ Unit
84
+ x
85
+ 8
86
+ TestCase
87
+ x
88
+ 10
89
+ open_class
90
+ x
91
+ 14
92
+ __class_init__
93
+ M
94
+ 1
95
+ n
96
+ n
97
+ x
98
+ 14
99
+ PlaygroundTest
100
+ i
101
+ 16
102
+ 5
103
+ 66
104
+ 99
105
+ 7
106
+ 0
107
+ 7
108
+ 1
109
+ 65
110
+ 67
111
+ 49
112
+ 2
113
+ 0
114
+ 49
115
+ 3
116
+ 4
117
+ 11
118
+ I
119
+ 5
120
+ I
121
+ 0
122
+ I
123
+ 0
124
+ I
125
+ 0
126
+ n
127
+ p
128
+ 4
129
+ x
130
+ 28
131
+ test_has_one_global_instance
132
+ M
133
+ 1
134
+ n
135
+ n
136
+ x
137
+ 28
138
+ test_has_one_global_instance
139
+ i
140
+ 28
141
+ 5
142
+ 45
143
+ 0
144
+ 1
145
+ 49
146
+ 2
147
+ 0
148
+ 19
149
+ 0
150
+ 47
151
+ 49
152
+ 3
153
+ 1
154
+ 15
155
+ 5
156
+ 20
157
+ 0
158
+ 45
159
+ 0
160
+ 4
161
+ 49
162
+ 2
163
+ 0
164
+ 47
165
+ 49
166
+ 5
167
+ 2
168
+ 11
169
+ I
170
+ 4
171
+ I
172
+ 1
173
+ I
174
+ 0
175
+ I
176
+ 0
177
+ n
178
+ p
179
+ 6
180
+ x
181
+ 6
182
+ Vanity
183
+ n
184
+ x
185
+ 10
186
+ playground
187
+ x
188
+ 6
189
+ assert
190
+ n
191
+ x
192
+ 12
193
+ assert_equal
194
+ p
195
+ 7
196
+ I
197
+ 0
198
+ I
199
+ 5
200
+ I
201
+ 0
202
+ I
203
+ 6
204
+ I
205
+ e
206
+ I
207
+ 7
208
+ I
209
+ 1c
210
+ x
211
+ 52
212
+ /Users/assaf/projects/vanity/test/playground_test.rb
213
+ p
214
+ 1
215
+ x
216
+ 8
217
+ instance
218
+ x
219
+ 17
220
+ method_visibility
221
+ x
222
+ 15
223
+ add_defn_method
224
+ p
225
+ 3
226
+ I
227
+ 2
228
+ I
229
+ 5
230
+ I
231
+ 10
232
+ x
233
+ 52
234
+ /Users/assaf/projects/vanity/test/playground_test.rb
235
+ p
236
+ 0
237
+ x
238
+ 13
239
+ attach_method
240
+ p
241
+ 5
242
+ I
243
+ 0
244
+ I
245
+ 1
246
+ I
247
+ 9
248
+ I
249
+ 3
250
+ I
251
+ 2c
252
+ x
253
+ 52
254
+ /Users/assaf/projects/vanity/test/playground_test.rb
255
+ p
256
+ 0
data/test/rails_test.rb CHANGED
@@ -127,62 +127,115 @@ $stdout << Vanity.playground.load_path
127
127
  # -- Connection configuration --
128
128
 
129
129
  def test_default_connection
130
- assert_equal "localhost:6379", load_rails(<<-RB)
130
+ assert_equal "redis://127.0.0.1:6379/0", load_rails(<<-RB)
131
131
  initializer.after_initialize
132
- $stdout << Vanity.playground.redis.server
132
+ $stdout << Vanity.playground.connection
133
133
  RB
134
134
  end
135
135
 
136
- def test_configured_connection
137
- assert_equal "127.0.0.1:6379", load_rails(<<-RB)
138
- Vanity.playground.redis = "127.0.0.1:6379"
136
+ def test_connection_from_string
137
+ assert_equal "redis://192.168.1.1:6379/5", load_rails(<<-RB)
138
+ Vanity.playground.establish_connection "redis://192.168.1.1:6379/5"
139
139
  initializer.after_initialize
140
- $stdout << Vanity.playground.redis.server
140
+ $stdout << Vanity.playground.connection
141
141
  RB
142
142
  end
143
143
 
144
- def test_test_connection
145
- assert_equal "Vanity::MockRedis", load_rails(<<-RB)
146
- Vanity.playground.test!
144
+ def test_connection_from_yaml
145
+ FileUtils.mkpath "tmp/config"
146
+ ENV["RAILS_ENV"] = "production"
147
+ File.open("tmp/config/vanity.yml", "w") do |io|
148
+ io.write <<-YML
149
+ production:
150
+ adapter: redis
151
+ host: somehost
152
+ database: 15
153
+ YML
154
+ end
155
+ assert_equal "redis://somehost:6379/15", load_rails(<<-RB)
147
156
  initializer.after_initialize
148
- $stdout << Vanity.playground.redis.class
157
+ $stdout << Vanity.playground.connection
149
158
  RB
159
+ ensure
160
+ File.unlink "tmp/config/vanity.yml"
150
161
  end
151
162
 
152
- def test_connection_from_yaml
163
+ def test_connection_from_yaml_url
153
164
  FileUtils.mkpath "tmp/config"
154
- yml = File.open("tmp/config/redis.yml", "w")
155
- yml << "production: internal.local:6379\n"
156
- yml.flush
157
- assert_equal "internal.local:6379", load_rails(<<-RB)
165
+ ENV["RAILS_ENV"] = "production"
166
+ File.open("tmp/config/vanity.yml", "w") do |io|
167
+ io.write <<-YML
168
+ production: redis://somehost/15
169
+ YML
170
+ end
171
+ assert_equal "redis://somehost:6379/15", load_rails(<<-RB)
158
172
  initializer.after_initialize
159
- $stdout << Vanity.playground.redis.server
173
+ $stdout << Vanity.playground.connection
160
174
  RB
161
175
  ensure
162
- File.unlink yml
176
+ File.unlink "tmp/config/vanity.yml"
163
177
  end
164
178
 
165
179
  def test_connection_from_yaml_missing
180
+ FileUtils.mkpath "tmp/config"
181
+ ENV["RAILS_ENV"] = "development"
182
+ File.open("tmp/config/vanity.yml", "w") do |io|
183
+ io.write <<-YML
184
+ production:
185
+ adapter: redis
186
+ YML
187
+ end
188
+ assert_equal "No configuration for development", load_rails(<<-RB)
189
+ initializer.after_initialize
190
+ $stdout << (Vanity.playground.connection rescue $!.message)
191
+ RB
192
+ ensure
193
+ File.unlink "tmp/config/vanity.yml"
194
+ end
195
+
196
+ def test_connection_from_redis_yml
166
197
  FileUtils.mkpath "tmp/config"
167
198
  yml = File.open("tmp/config/redis.yml", "w")
168
199
  yml << "development: internal.local:6379\n"
169
200
  yml.flush
170
- assert_equal "localhost:6379", load_rails(<<-RB)
201
+ assert_equal "redis://internal.local:6379/0", load_rails(<<-RB)
171
202
  initializer.after_initialize
172
- $stdout << Vanity.playground.redis.server
203
+ $stdout << Vanity.playground.connection
173
204
  RB
174
205
  ensure
175
- File.unlink yml
206
+ File.unlink yml.path
207
+ end
208
+
209
+ def test_collection_true_in_production
210
+ assert_equal "true", load_rails(<<-RB, "production")
211
+ initializer.after_initialize
212
+ $stdout << Vanity.playground.collecting?
213
+ RB
214
+ end
215
+
216
+ def test_collection_false_in_development
217
+ assert_equal "false", load_rails(<<-RB, "development")
218
+ initializer.after_initialize
219
+ $stdout << Vanity.playground.collecting?
220
+ RB
221
+ end
222
+
223
+ def test_collection_false_after_test!
224
+ assert_equal "false", load_rails(<<-RB, "production")
225
+ initializer.after_initialize
226
+ Vanity.playground.test!
227
+ $stdout << Vanity.playground.collecting?
228
+ RB
176
229
  end
177
230
 
178
231
 
179
- def load_rails(code)
232
+ def load_rails(code, env = "production")
180
233
  tmp = Tempfile.open("test.rb")
181
234
  tmp.write <<-RB
182
235
  $:.delete_if { |path| path[/gems\\/vanity-\\d/] }
183
236
  $:.unshift File.expand_path("../lib")
184
237
  RAILS_ROOT = File.expand_path(".")
185
- RAILS_ENV = "production"
238
+ RAILS_ENV = "#{env}"
186
239
  require "initializer"
187
240
  require "active_support"
188
241
  Rails.configuration = Rails::Configuration.new
@@ -0,0 +1,4086 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 73
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 99
23
+ 7
24
+ 2
25
+ 45
26
+ 3
27
+ 4
28
+ 43
29
+ 5
30
+ 65
31
+ 49
32
+ 6
33
+ 3
34
+ 13
35
+ 99
36
+ 12
37
+ 7
38
+ 7
39
+ 12
40
+ 7
41
+ 8
42
+ 12
43
+ 65
44
+ 12
45
+ 49
46
+ 9
47
+ 4
48
+ 15
49
+ 49
50
+ 7
51
+ 0
52
+ 15
53
+ 99
54
+ 7
55
+ 10
56
+ 45
57
+ 3
58
+ 11
59
+ 43
60
+ 12
61
+ 65
62
+ 49
63
+ 6
64
+ 3
65
+ 13
66
+ 99
67
+ 12
68
+ 7
69
+ 7
70
+ 12
71
+ 7
72
+ 13
73
+ 12
74
+ 65
75
+ 12
76
+ 49
77
+ 9
78
+ 4
79
+ 15
80
+ 49
81
+ 7
82
+ 0
83
+ 15
84
+ 2
85
+ 11
86
+ I
87
+ 6
88
+ I
89
+ 0
90
+ I
91
+ 0
92
+ I
93
+ 0
94
+ n
95
+ p
96
+ 14
97
+ s
98
+ 16
99
+ test/test_helper
100
+ x
101
+ 7
102
+ require
103
+ x
104
+ 19
105
+ UseVanityController
106
+ x
107
+ 16
108
+ ActionController
109
+ n
110
+ x
111
+ 4
112
+ Base
113
+ x
114
+ 10
115
+ open_class
116
+ x
117
+ 14
118
+ __class_init__
119
+ M
120
+ 1
121
+ n
122
+ n
123
+ x
124
+ 19
125
+ UseVanityController
126
+ i
127
+ 24
128
+ 5
129
+ 66
130
+ 5
131
+ 7
132
+ 0
133
+ 47
134
+ 49
135
+ 1
136
+ 1
137
+ 15
138
+ 99
139
+ 7
140
+ 2
141
+ 7
142
+ 3
143
+ 65
144
+ 67
145
+ 49
146
+ 4
147
+ 0
148
+ 49
149
+ 5
150
+ 4
151
+ 11
152
+ I
153
+ 5
154
+ I
155
+ 0
156
+ I
157
+ 0
158
+ I
159
+ 0
160
+ n
161
+ p
162
+ 6
163
+ x
164
+ 12
165
+ current_user
166
+ x
167
+ 13
168
+ attr_accessor
169
+ x
170
+ 5
171
+ index
172
+ M
173
+ 1
174
+ n
175
+ n
176
+ x
177
+ 5
178
+ index
179
+ i
180
+ 27
181
+ 5
182
+ 44
183
+ 43
184
+ 0
185
+ 79
186
+ 49
187
+ 1
188
+ 1
189
+ 13
190
+ 7
191
+ 2
192
+ 5
193
+ 7
194
+ 3
195
+ 47
196
+ 49
197
+ 4
198
+ 1
199
+ 49
200
+ 5
201
+ 2
202
+ 15
203
+ 47
204
+ 49
205
+ 6
206
+ 1
207
+ 11
208
+ I
209
+ 6
210
+ I
211
+ 0
212
+ I
213
+ 0
214
+ I
215
+ 0
216
+ n
217
+ p
218
+ 7
219
+ x
220
+ 4
221
+ Hash
222
+ x
223
+ 16
224
+ new_from_literal
225
+ x
226
+ 4
227
+ text
228
+ x
229
+ 11
230
+ pie_or_cake
231
+ x
232
+ 7
233
+ ab_test
234
+ x
235
+ 3
236
+ []=
237
+ x
238
+ 6
239
+ render
240
+ p
241
+ 5
242
+ I
243
+ 0
244
+ I
245
+ 6
246
+ I
247
+ 0
248
+ I
249
+ 7
250
+ I
251
+ 1b
252
+ x
253
+ 47
254
+ /Users/assaf/projects/vanity/test/rails_test.rb
255
+ p
256
+ 0
257
+ x
258
+ 17
259
+ method_visibility
260
+ x
261
+ 15
262
+ add_defn_method
263
+ p
264
+ 5
265
+ I
266
+ 2
267
+ I
268
+ 4
269
+ I
270
+ a
271
+ I
272
+ 6
273
+ I
274
+ 18
275
+ x
276
+ 47
277
+ /Users/assaf/projects/vanity/test/rails_test.rb
278
+ p
279
+ 0
280
+ x
281
+ 13
282
+ attach_method
283
+ x
284
+ 13
285
+ UseVanityTest
286
+ n
287
+ x
288
+ 8
289
+ TestCase
290
+ M
291
+ 1
292
+ n
293
+ n
294
+ x
295
+ 13
296
+ UseVanityTest
297
+ i
298
+ 305
299
+ 5
300
+ 66
301
+ 5
302
+ 45
303
+ 0
304
+ 1
305
+ 47
306
+ 49
307
+ 2
308
+ 1
309
+ 15
310
+ 99
311
+ 7
312
+ 3
313
+ 7
314
+ 4
315
+ 65
316
+ 67
317
+ 49
318
+ 5
319
+ 0
320
+ 49
321
+ 6
322
+ 4
323
+ 15
324
+ 99
325
+ 7
326
+ 7
327
+ 7
328
+ 8
329
+ 65
330
+ 67
331
+ 49
332
+ 5
333
+ 0
334
+ 49
335
+ 6
336
+ 4
337
+ 15
338
+ 99
339
+ 7
340
+ 9
341
+ 7
342
+ 10
343
+ 65
344
+ 67
345
+ 49
346
+ 5
347
+ 0
348
+ 49
349
+ 6
350
+ 4
351
+ 15
352
+ 99
353
+ 7
354
+ 11
355
+ 7
356
+ 12
357
+ 65
358
+ 67
359
+ 49
360
+ 5
361
+ 0
362
+ 49
363
+ 6
364
+ 4
365
+ 15
366
+ 99
367
+ 7
368
+ 13
369
+ 7
370
+ 14
371
+ 65
372
+ 67
373
+ 49
374
+ 5
375
+ 0
376
+ 49
377
+ 6
378
+ 4
379
+ 15
380
+ 99
381
+ 7
382
+ 15
383
+ 7
384
+ 16
385
+ 65
386
+ 67
387
+ 49
388
+ 5
389
+ 0
390
+ 49
391
+ 6
392
+ 4
393
+ 15
394
+ 99
395
+ 7
396
+ 17
397
+ 7
398
+ 18
399
+ 65
400
+ 67
401
+ 49
402
+ 5
403
+ 0
404
+ 49
405
+ 6
406
+ 4
407
+ 15
408
+ 99
409
+ 7
410
+ 19
411
+ 7
412
+ 20
413
+ 65
414
+ 67
415
+ 49
416
+ 5
417
+ 0
418
+ 49
419
+ 6
420
+ 4
421
+ 15
422
+ 99
423
+ 7
424
+ 21
425
+ 7
426
+ 22
427
+ 65
428
+ 67
429
+ 49
430
+ 5
431
+ 0
432
+ 49
433
+ 6
434
+ 4
435
+ 15
436
+ 99
437
+ 7
438
+ 23
439
+ 7
440
+ 24
441
+ 65
442
+ 67
443
+ 49
444
+ 5
445
+ 0
446
+ 49
447
+ 6
448
+ 4
449
+ 15
450
+ 99
451
+ 7
452
+ 25
453
+ 7
454
+ 26
455
+ 65
456
+ 67
457
+ 49
458
+ 5
459
+ 0
460
+ 49
461
+ 6
462
+ 4
463
+ 15
464
+ 99
465
+ 7
466
+ 27
467
+ 7
468
+ 28
469
+ 65
470
+ 67
471
+ 49
472
+ 5
473
+ 0
474
+ 49
475
+ 6
476
+ 4
477
+ 15
478
+ 99
479
+ 7
480
+ 29
481
+ 7
482
+ 30
483
+ 65
484
+ 67
485
+ 49
486
+ 5
487
+ 0
488
+ 49
489
+ 6
490
+ 4
491
+ 15
492
+ 99
493
+ 7
494
+ 31
495
+ 7
496
+ 32
497
+ 65
498
+ 67
499
+ 49
500
+ 5
501
+ 0
502
+ 49
503
+ 6
504
+ 4
505
+ 15
506
+ 99
507
+ 7
508
+ 33
509
+ 7
510
+ 34
511
+ 65
512
+ 67
513
+ 49
514
+ 5
515
+ 0
516
+ 49
517
+ 6
518
+ 4
519
+ 15
520
+ 99
521
+ 7
522
+ 35
523
+ 7
524
+ 36
525
+ 65
526
+ 67
527
+ 49
528
+ 5
529
+ 0
530
+ 49
531
+ 6
532
+ 4
533
+ 15
534
+ 99
535
+ 7
536
+ 37
537
+ 7
538
+ 38
539
+ 65
540
+ 67
541
+ 49
542
+ 5
543
+ 0
544
+ 49
545
+ 6
546
+ 4
547
+ 15
548
+ 99
549
+ 7
550
+ 39
551
+ 7
552
+ 40
553
+ 65
554
+ 67
555
+ 49
556
+ 5
557
+ 0
558
+ 49
559
+ 6
560
+ 4
561
+ 15
562
+ 99
563
+ 7
564
+ 41
565
+ 7
566
+ 42
567
+ 65
568
+ 67
569
+ 49
570
+ 5
571
+ 0
572
+ 49
573
+ 6
574
+ 4
575
+ 15
576
+ 99
577
+ 7
578
+ 43
579
+ 7
580
+ 44
581
+ 65
582
+ 67
583
+ 49
584
+ 5
585
+ 0
586
+ 49
587
+ 6
588
+ 4
589
+ 15
590
+ 99
591
+ 7
592
+ 45
593
+ 7
594
+ 46
595
+ 65
596
+ 67
597
+ 49
598
+ 5
599
+ 0
600
+ 49
601
+ 6
602
+ 4
603
+ 11
604
+ I
605
+ 5
606
+ I
607
+ 0
608
+ I
609
+ 0
610
+ I
611
+ 0
612
+ n
613
+ p
614
+ 47
615
+ x
616
+ 19
617
+ UseVanityController
618
+ n
619
+ x
620
+ 5
621
+ tests
622
+ x
623
+ 5
624
+ setup
625
+ M
626
+ 1
627
+ n
628
+ n
629
+ x
630
+ 5
631
+ setup
632
+ i
633
+ 31
634
+ 54
635
+ 89
636
+ 0
637
+ 15
638
+ 5
639
+ 7
640
+ 1
641
+ 47
642
+ 49
643
+ 2
644
+ 1
645
+ 15
646
+ 5
647
+ 7
648
+ 3
649
+ 56
650
+ 4
651
+ 47
652
+ 50
653
+ 5
654
+ 1
655
+ 15
656
+ 45
657
+ 6
658
+ 7
659
+ 56
660
+ 8
661
+ 50
662
+ 9
663
+ 0
664
+ 11
665
+ I
666
+ 3
667
+ I
668
+ 0
669
+ I
670
+ 0
671
+ I
672
+ 0
673
+ n
674
+ p
675
+ 10
676
+ x
677
+ 5
678
+ setup
679
+ x
680
+ 10
681
+ sugar_high
682
+ x
683
+ 6
684
+ metric
685
+ x
686
+ 11
687
+ pie_or_cake
688
+ M
689
+ 1
690
+ p
691
+ 2
692
+ x
693
+ 9
694
+ for_block
695
+ t
696
+ n
697
+ x
698
+ 5
699
+ setup
700
+ i
701
+ 8
702
+ 5
703
+ 7
704
+ 0
705
+ 47
706
+ 49
707
+ 1
708
+ 1
709
+ 11
710
+ I
711
+ 3
712
+ I
713
+ 0
714
+ I
715
+ 0
716
+ I
717
+ 0
718
+ I
719
+ -2
720
+ p
721
+ 2
722
+ x
723
+ 10
724
+ sugar_high
725
+ x
726
+ 7
727
+ metrics
728
+ p
729
+ 5
730
+ I
731
+ 0
732
+ I
733
+ 12
734
+ I
735
+ 0
736
+ I
737
+ 13
738
+ I
739
+ 8
740
+ x
741
+ 47
742
+ /Users/assaf/projects/vanity/test/rails_test.rb
743
+ p
744
+ 0
745
+ x
746
+ 11
747
+ new_ab_test
748
+ x
749
+ 19
750
+ UseVanityController
751
+ n
752
+ M
753
+ 1
754
+ p
755
+ 2
756
+ x
757
+ 9
758
+ for_block
759
+ t
760
+ n
761
+ x
762
+ 5
763
+ setup
764
+ i
765
+ 8
766
+ 5
767
+ 7
768
+ 0
769
+ 47
770
+ 49
771
+ 1
772
+ 1
773
+ 11
774
+ I
775
+ 3
776
+ I
777
+ 0
778
+ I
779
+ 0
780
+ I
781
+ 0
782
+ I
783
+ -2
784
+ p
785
+ 2
786
+ x
787
+ 12
788
+ current_user
789
+ x
790
+ 10
791
+ use_vanity
792
+ p
793
+ 5
794
+ I
795
+ 0
796
+ I
797
+ 15
798
+ I
799
+ 0
800
+ I
801
+ 16
802
+ I
803
+ 8
804
+ x
805
+ 47
806
+ /Users/assaf/projects/vanity/test/rails_test.rb
807
+ p
808
+ 0
809
+ x
810
+ 10
811
+ class_eval
812
+ p
813
+ 11
814
+ I
815
+ 0
816
+ I
817
+ f
818
+ I
819
+ 0
820
+ I
821
+ 10
822
+ I
823
+ 4
824
+ I
825
+ 11
826
+ I
827
+ c
828
+ I
829
+ 12
830
+ I
831
+ 16
832
+ I
833
+ 15
834
+ I
835
+ 1f
836
+ x
837
+ 47
838
+ /Users/assaf/projects/vanity/test/rails_test.rb
839
+ p
840
+ 0
841
+ x
842
+ 17
843
+ method_visibility
844
+ x
845
+ 15
846
+ add_defn_method
847
+ x
848
+ 32
849
+ test_vanity_cookie_is_persistent
850
+ M
851
+ 1
852
+ n
853
+ n
854
+ x
855
+ 32
856
+ test_vanity_cookie_is_persistent
857
+ i
858
+ 91
859
+ 5
860
+ 7
861
+ 0
862
+ 47
863
+ 49
864
+ 1
865
+ 1
866
+ 15
867
+ 5
868
+ 39
869
+ 2
870
+ 7
871
+ 3
872
+ 64
873
+ 49
874
+ 4
875
+ 1
876
+ 56
877
+ 5
878
+ 50
879
+ 6
880
+ 0
881
+ 19
882
+ 0
883
+ 47
884
+ 49
885
+ 7
886
+ 1
887
+ 15
888
+ 5
889
+ 20
890
+ 0
891
+ 7
892
+ 8
893
+ 13
894
+ 70
895
+ 9
896
+ 50
897
+ 15
898
+ 44
899
+ 43
900
+ 9
901
+ 7
902
+ 10
903
+ 78
904
+ 49
905
+ 11
906
+ 2
907
+ 6
908
+ 8
909
+ 79
910
+ 49
911
+ 4
912
+ 2
913
+ 19
914
+ 1
915
+ 47
916
+ 49
917
+ 7
918
+ 1
919
+ 15
920
+ 5
921
+ 45
922
+ 12
923
+ 13
924
+ 20
925
+ 1
926
+ 49
927
+ 14
928
+ 1
929
+ 45
930
+ 12
931
+ 15
932
+ 49
933
+ 16
934
+ 0
935
+ 79
936
+ 49
937
+ 17
938
+ 0
939
+ 81
940
+ 18
941
+ 79
942
+ 49
943
+ 19
944
+ 0
945
+ 47
946
+ 49
947
+ 20
948
+ 3
949
+ 11
950
+ I
951
+ 7
952
+ I
953
+ 2
954
+ I
955
+ 0
956
+ I
957
+ 0
958
+ n
959
+ p
960
+ 21
961
+ x
962
+ 5
963
+ index
964
+ x
965
+ 3
966
+ get
967
+ x
968
+ 9
969
+ @response
970
+ s
971
+ 10
972
+ Set-Cookie
973
+ x
974
+ 2
975
+ []
976
+ M
977
+ 1
978
+ p
979
+ 2
980
+ x
981
+ 9
982
+ for_block
983
+ t
984
+ n
985
+ x
986
+ 32
987
+ test_vanity_cookie_is_persistent
988
+ i
989
+ 28
990
+ 57
991
+ 19
992
+ 0
993
+ 15
994
+ 20
995
+ 0
996
+ 7
997
+ 0
998
+ 13
999
+ 70
1000
+ 9
1001
+ 24
1002
+ 15
1003
+ 44
1004
+ 43
1005
+ 1
1006
+ 7
1007
+ 2
1008
+ 78
1009
+ 49
1010
+ 3
1011
+ 2
1012
+ 6
1013
+ 0
1014
+ 49
1015
+ 4
1016
+ 1
1017
+ 11
1018
+ I
1019
+ 6
1020
+ I
1021
+ 1
1022
+ I
1023
+ 1
1024
+ I
1025
+ 1
1026
+ n
1027
+ p
1028
+ 5
1029
+ n
1030
+ x
1031
+ 6
1032
+ Regexp
1033
+ s
1034
+ 11
1035
+ ^vanity_id=
1036
+ x
1037
+ 3
1038
+ new
1039
+ x
1040
+ 2
1041
+ []
1042
+ p
1043
+ 3
1044
+ I
1045
+ 0
1046
+ I
1047
+ 1c
1048
+ I
1049
+ 1c
1050
+ x
1051
+ 47
1052
+ /Users/assaf/projects/vanity/test/rails_test.rb
1053
+ p
1054
+ 1
1055
+ x
1056
+ 1
1057
+ c
1058
+ x
1059
+ 4
1060
+ find
1061
+ x
1062
+ 6
1063
+ assert
1064
+ n
1065
+ x
1066
+ 6
1067
+ Regexp
1068
+ s
1069
+ 50
1070
+ vanity_id=[a-f0-9]{32}; path=\/; expires=(.*)(;|$)
1071
+ x
1072
+ 3
1073
+ new
1074
+ x
1075
+ 4
1076
+ Time
1077
+ n
1078
+ x
1079
+ 5
1080
+ parse
1081
+ n
1082
+ x
1083
+ 3
1084
+ now
1085
+ x
1086
+ 5
1087
+ month
1088
+ x
1089
+ 1
1090
+ +
1091
+ x
1092
+ 6
1093
+ minute
1094
+ x
1095
+ 15
1096
+ assert_in_delta
1097
+ p
1098
+ 11
1099
+ I
1100
+ 0
1101
+ I
1102
+ 1a
1103
+ I
1104
+ 0
1105
+ I
1106
+ 1b
1107
+ I
1108
+ 8
1109
+ I
1110
+ 1c
1111
+ I
1112
+ 1d
1113
+ I
1114
+ 1d
1115
+ I
1116
+ 3d
1117
+ I
1118
+ 1e
1119
+ I
1120
+ 5b
1121
+ x
1122
+ 47
1123
+ /Users/assaf/projects/vanity/test/rails_test.rb
1124
+ p
1125
+ 2
1126
+ x
1127
+ 6
1128
+ cookie
1129
+ x
1130
+ 7
1131
+ expires
1132
+ x
1133
+ 29
1134
+ test_vanity_cookie_default_id
1135
+ M
1136
+ 1
1137
+ n
1138
+ n
1139
+ x
1140
+ 29
1141
+ test_vanity_cookie_default_id
1142
+ i
1143
+ 44
1144
+ 5
1145
+ 7
1146
+ 0
1147
+ 47
1148
+ 49
1149
+ 1
1150
+ 1
1151
+ 15
1152
+ 5
1153
+ 5
1154
+ 48
1155
+ 2
1156
+ 7
1157
+ 3
1158
+ 64
1159
+ 49
1160
+ 4
1161
+ 1
1162
+ 7
1163
+ 5
1164
+ 13
1165
+ 70
1166
+ 9
1167
+ 36
1168
+ 15
1169
+ 44
1170
+ 43
1171
+ 6
1172
+ 7
1173
+ 7
1174
+ 78
1175
+ 49
1176
+ 8
1177
+ 2
1178
+ 6
1179
+ 5
1180
+ 49
1181
+ 9
1182
+ 1
1183
+ 47
1184
+ 49
1185
+ 10
1186
+ 1
1187
+ 11
1188
+ I
1189
+ 5
1190
+ I
1191
+ 0
1192
+ I
1193
+ 0
1194
+ I
1195
+ 0
1196
+ n
1197
+ p
1198
+ 11
1199
+ x
1200
+ 5
1201
+ index
1202
+ x
1203
+ 3
1204
+ get
1205
+ x
1206
+ 7
1207
+ cookies
1208
+ s
1209
+ 9
1210
+ vanity_id
1211
+ x
1212
+ 2
1213
+ []
1214
+ n
1215
+ x
1216
+ 6
1217
+ Regexp
1218
+ s
1219
+ 14
1220
+ ^[a-f0-9]{32}$
1221
+ x
1222
+ 3
1223
+ new
1224
+ x
1225
+ 2
1226
+ =~
1227
+ x
1228
+ 6
1229
+ assert
1230
+ p
1231
+ 7
1232
+ I
1233
+ 0
1234
+ I
1235
+ 21
1236
+ I
1237
+ 0
1238
+ I
1239
+ 22
1240
+ I
1241
+ 8
1242
+ I
1243
+ 23
1244
+ I
1245
+ 2c
1246
+ x
1247
+ 47
1248
+ /Users/assaf/projects/vanity/test/rails_test.rb
1249
+ p
1250
+ 0
1251
+ x
1252
+ 29
1253
+ test_vanity_cookie_retains_id
1254
+ M
1255
+ 1
1256
+ n
1257
+ n
1258
+ x
1259
+ 29
1260
+ test_vanity_cookie_retains_id
1261
+ i
1262
+ 45
1263
+ 39
1264
+ 0
1265
+ 49
1266
+ 1
1267
+ 0
1268
+ 7
1269
+ 2
1270
+ 64
1271
+ 7
1272
+ 3
1273
+ 64
1274
+ 13
1275
+ 18
1276
+ 3
1277
+ 49
1278
+ 4
1279
+ 2
1280
+ 15
1281
+ 15
1282
+ 5
1283
+ 7
1284
+ 5
1285
+ 47
1286
+ 49
1287
+ 6
1288
+ 1
1289
+ 15
1290
+ 5
1291
+ 7
1292
+ 3
1293
+ 64
1294
+ 5
1295
+ 48
1296
+ 1
1297
+ 7
1298
+ 2
1299
+ 64
1300
+ 49
1301
+ 7
1302
+ 1
1303
+ 47
1304
+ 49
1305
+ 8
1306
+ 2
1307
+ 11
1308
+ I
1309
+ 4
1310
+ I
1311
+ 0
1312
+ I
1313
+ 0
1314
+ I
1315
+ 0
1316
+ n
1317
+ p
1318
+ 9
1319
+ x
1320
+ 8
1321
+ @request
1322
+ x
1323
+ 7
1324
+ cookies
1325
+ s
1326
+ 9
1327
+ vanity_id
1328
+ s
1329
+ 14
1330
+ from_last_time
1331
+ x
1332
+ 3
1333
+ []=
1334
+ x
1335
+ 5
1336
+ index
1337
+ x
1338
+ 3
1339
+ get
1340
+ x
1341
+ 2
1342
+ []
1343
+ x
1344
+ 12
1345
+ assert_equal
1346
+ p
1347
+ 9
1348
+ I
1349
+ 0
1350
+ I
1351
+ 26
1352
+ I
1353
+ 0
1354
+ I
1355
+ 27
1356
+ I
1357
+ 13
1358
+ I
1359
+ 28
1360
+ I
1361
+ 1b
1362
+ I
1363
+ 29
1364
+ I
1365
+ 2d
1366
+ x
1367
+ 47
1368
+ /Users/assaf/projects/vanity/test/rails_test.rb
1369
+ p
1370
+ 0
1371
+ x
1372
+ 36
1373
+ test_vanity_identity_set_from_cookie
1374
+ M
1375
+ 1
1376
+ n
1377
+ n
1378
+ x
1379
+ 36
1380
+ test_vanity_identity_set_from_cookie
1381
+ i
1382
+ 43
1383
+ 39
1384
+ 0
1385
+ 49
1386
+ 1
1387
+ 0
1388
+ 7
1389
+ 2
1390
+ 64
1391
+ 7
1392
+ 3
1393
+ 64
1394
+ 13
1395
+ 18
1396
+ 3
1397
+ 49
1398
+ 4
1399
+ 2
1400
+ 15
1401
+ 15
1402
+ 5
1403
+ 7
1404
+ 5
1405
+ 47
1406
+ 49
1407
+ 6
1408
+ 1
1409
+ 15
1410
+ 5
1411
+ 7
1412
+ 3
1413
+ 64
1414
+ 39
1415
+ 7
1416
+ 7
1417
+ 8
1418
+ 49
1419
+ 9
1420
+ 1
1421
+ 47
1422
+ 49
1423
+ 10
1424
+ 2
1425
+ 11
1426
+ I
1427
+ 4
1428
+ I
1429
+ 0
1430
+ I
1431
+ 0
1432
+ I
1433
+ 0
1434
+ n
1435
+ p
1436
+ 11
1437
+ x
1438
+ 8
1439
+ @request
1440
+ x
1441
+ 7
1442
+ cookies
1443
+ s
1444
+ 9
1445
+ vanity_id
1446
+ s
1447
+ 14
1448
+ from_last_time
1449
+ x
1450
+ 3
1451
+ []=
1452
+ x
1453
+ 5
1454
+ index
1455
+ x
1456
+ 3
1457
+ get
1458
+ x
1459
+ 11
1460
+ @controller
1461
+ x
1462
+ 15
1463
+ vanity_identity
1464
+ x
1465
+ 4
1466
+ send
1467
+ x
1468
+ 12
1469
+ assert_equal
1470
+ p
1471
+ 9
1472
+ I
1473
+ 0
1474
+ I
1475
+ 2c
1476
+ I
1477
+ 0
1478
+ I
1479
+ 2d
1480
+ I
1481
+ 13
1482
+ I
1483
+ 2e
1484
+ I
1485
+ 1b
1486
+ I
1487
+ 2f
1488
+ I
1489
+ 2b
1490
+ x
1491
+ 47
1492
+ /Users/assaf/projects/vanity/test/rails_test.rb
1493
+ p
1494
+ 0
1495
+ x
1496
+ 34
1497
+ test_vanity_identity_set_from_user
1498
+ M
1499
+ 1
1500
+ n
1501
+ n
1502
+ x
1503
+ 34
1504
+ test_vanity_identity_set_from_user
1505
+ i
1506
+ 59
1507
+ 39
1508
+ 0
1509
+ 5
1510
+ 7
1511
+ 1
1512
+ 64
1513
+ 44
1514
+ 43
1515
+ 2
1516
+ 79
1517
+ 49
1518
+ 3
1519
+ 1
1520
+ 13
1521
+ 7
1522
+ 4
1523
+ 7
1524
+ 5
1525
+ 64
1526
+ 49
1527
+ 6
1528
+ 2
1529
+ 15
1530
+ 47
1531
+ 49
1532
+ 7
1533
+ 2
1534
+ 13
1535
+ 18
1536
+ 2
1537
+ 49
1538
+ 8
1539
+ 1
1540
+ 15
1541
+ 15
1542
+ 5
1543
+ 7
1544
+ 9
1545
+ 47
1546
+ 49
1547
+ 10
1548
+ 1
1549
+ 15
1550
+ 5
1551
+ 7
1552
+ 5
1553
+ 64
1554
+ 39
1555
+ 0
1556
+ 7
1557
+ 11
1558
+ 49
1559
+ 12
1560
+ 1
1561
+ 47
1562
+ 49
1563
+ 13
1564
+ 2
1565
+ 11
1566
+ I
1567
+ 7
1568
+ I
1569
+ 0
1570
+ I
1571
+ 0
1572
+ I
1573
+ 0
1574
+ n
1575
+ p
1576
+ 14
1577
+ x
1578
+ 11
1579
+ @controller
1580
+ s
1581
+ 4
1582
+ user
1583
+ x
1584
+ 4
1585
+ Hash
1586
+ x
1587
+ 16
1588
+ new_from_literal
1589
+ x
1590
+ 2
1591
+ id
1592
+ s
1593
+ 7
1594
+ user_id
1595
+ x
1596
+ 3
1597
+ []=
1598
+ x
1599
+ 4
1600
+ mock
1601
+ x
1602
+ 13
1603
+ current_user=
1604
+ x
1605
+ 5
1606
+ index
1607
+ x
1608
+ 3
1609
+ get
1610
+ x
1611
+ 15
1612
+ vanity_identity
1613
+ x
1614
+ 4
1615
+ send
1616
+ x
1617
+ 12
1618
+ assert_equal
1619
+ p
1620
+ 9
1621
+ I
1622
+ 0
1623
+ I
1624
+ 32
1625
+ I
1626
+ 0
1627
+ I
1628
+ 33
1629
+ I
1630
+ 23
1631
+ I
1632
+ 34
1633
+ I
1634
+ 2b
1635
+ I
1636
+ 35
1637
+ I
1638
+ 3b
1639
+ x
1640
+ 47
1641
+ /Users/assaf/projects/vanity/test/rails_test.rb
1642
+ p
1643
+ 0
1644
+ x
1645
+ 39
1646
+ test_vanity_identity_with_no_user_model
1647
+ M
1648
+ 1
1649
+ n
1650
+ n
1651
+ x
1652
+ 39
1653
+ test_vanity_identity_with_no_user_model
1654
+ i
1655
+ 87
1656
+ 45
1657
+ 0
1658
+ 1
1659
+ 56
1660
+ 2
1661
+ 50
1662
+ 3
1663
+ 0
1664
+ 15
1665
+ 39
1666
+ 4
1667
+ 45
1668
+ 5
1669
+ 6
1670
+ 13
1671
+ 71
1672
+ 7
1673
+ 47
1674
+ 9
1675
+ 32
1676
+ 47
1677
+ 49
1678
+ 8
1679
+ 0
1680
+ 13
1681
+ 47
1682
+ 49
1683
+ 9
1684
+ 0
1685
+ 15
1686
+ 8
1687
+ 35
1688
+ 49
1689
+ 7
1690
+ 0
1691
+ 13
1692
+ 18
1693
+ 2
1694
+ 49
1695
+ 10
1696
+ 1
1697
+ 15
1698
+ 15
1699
+ 5
1700
+ 7
1701
+ 11
1702
+ 47
1703
+ 49
1704
+ 12
1705
+ 1
1706
+ 15
1707
+ 5
1708
+ 5
1709
+ 48
1710
+ 13
1711
+ 7
1712
+ 14
1713
+ 64
1714
+ 49
1715
+ 15
1716
+ 1
1717
+ 7
1718
+ 16
1719
+ 13
1720
+ 70
1721
+ 9
1722
+ 79
1723
+ 15
1724
+ 44
1725
+ 43
1726
+ 17
1727
+ 7
1728
+ 18
1729
+ 78
1730
+ 49
1731
+ 7
1732
+ 2
1733
+ 6
1734
+ 16
1735
+ 49
1736
+ 19
1737
+ 1
1738
+ 47
1739
+ 49
1740
+ 20
1741
+ 1
1742
+ 11
1743
+ I
1744
+ 5
1745
+ I
1746
+ 0
1747
+ I
1748
+ 0
1749
+ I
1750
+ 0
1751
+ n
1752
+ p
1753
+ 21
1754
+ x
1755
+ 19
1756
+ UseVanityController
1757
+ n
1758
+ M
1759
+ 1
1760
+ p
1761
+ 2
1762
+ x
1763
+ 9
1764
+ for_block
1765
+ t
1766
+ n
1767
+ x
1768
+ 39
1769
+ test_vanity_identity_with_no_user_model
1770
+ i
1771
+ 7
1772
+ 5
1773
+ 1
1774
+ 47
1775
+ 49
1776
+ 0
1777
+ 1
1778
+ 11
1779
+ I
1780
+ 3
1781
+ I
1782
+ 0
1783
+ I
1784
+ 0
1785
+ I
1786
+ 0
1787
+ I
1788
+ -2
1789
+ p
1790
+ 1
1791
+ x
1792
+ 10
1793
+ use_vanity
1794
+ p
1795
+ 5
1796
+ I
1797
+ 0
1798
+ I
1799
+ 39
1800
+ I
1801
+ 0
1802
+ I
1803
+ 3a
1804
+ I
1805
+ 7
1806
+ x
1807
+ 47
1808
+ /Users/assaf/projects/vanity/test/rails_test.rb
1809
+ p
1810
+ 0
1811
+ x
1812
+ 10
1813
+ class_eval
1814
+ x
1815
+ 11
1816
+ @controller
1817
+ x
1818
+ 6
1819
+ Object
1820
+ n
1821
+ x
1822
+ 3
1823
+ new
1824
+ x
1825
+ 8
1826
+ allocate
1827
+ x
1828
+ 10
1829
+ initialize
1830
+ x
1831
+ 13
1832
+ current_user=
1833
+ x
1834
+ 5
1835
+ index
1836
+ x
1837
+ 3
1838
+ get
1839
+ x
1840
+ 7
1841
+ cookies
1842
+ s
1843
+ 9
1844
+ vanity_id
1845
+ x
1846
+ 2
1847
+ []
1848
+ n
1849
+ x
1850
+ 6
1851
+ Regexp
1852
+ s
1853
+ 14
1854
+ ^[a-f0-9]{32}$
1855
+ x
1856
+ 2
1857
+ =~
1858
+ x
1859
+ 6
1860
+ assert
1861
+ p
1862
+ 11
1863
+ I
1864
+ 0
1865
+ I
1866
+ 38
1867
+ I
1868
+ 0
1869
+ I
1870
+ 39
1871
+ I
1872
+ 9
1873
+ I
1874
+ 3c
1875
+ I
1876
+ 2b
1877
+ I
1878
+ 3d
1879
+ I
1880
+ 33
1881
+ I
1882
+ 3e
1883
+ I
1884
+ 57
1885
+ x
1886
+ 47
1887
+ /Users/assaf/projects/vanity/test/rails_test.rb
1888
+ p
1889
+ 0
1890
+ x
1891
+ 35
1892
+ test_vanity_identity_set_with_block
1893
+ M
1894
+ 1
1895
+ n
1896
+ n
1897
+ x
1898
+ 35
1899
+ test_vanity_identity_set_with_block
1900
+ i
1901
+ 46
1902
+ 45
1903
+ 0
1904
+ 1
1905
+ 56
1906
+ 2
1907
+ 50
1908
+ 3
1909
+ 0
1910
+ 15
1911
+ 39
1912
+ 4
1913
+ 7
1914
+ 5
1915
+ 64
1916
+ 13
1917
+ 18
1918
+ 2
1919
+ 49
1920
+ 6
1921
+ 1
1922
+ 15
1923
+ 15
1924
+ 5
1925
+ 7
1926
+ 7
1927
+ 47
1928
+ 49
1929
+ 8
1930
+ 1
1931
+ 15
1932
+ 5
1933
+ 7
1934
+ 5
1935
+ 64
1936
+ 39
1937
+ 4
1938
+ 7
1939
+ 9
1940
+ 49
1941
+ 10
1942
+ 1
1943
+ 47
1944
+ 49
1945
+ 11
1946
+ 2
1947
+ 11
1948
+ I
1949
+ 4
1950
+ I
1951
+ 0
1952
+ I
1953
+ 0
1954
+ I
1955
+ 0
1956
+ n
1957
+ p
1958
+ 12
1959
+ x
1960
+ 19
1961
+ UseVanityController
1962
+ n
1963
+ M
1964
+ 1
1965
+ p
1966
+ 2
1967
+ x
1968
+ 9
1969
+ for_block
1970
+ t
1971
+ n
1972
+ x
1973
+ 35
1974
+ test_vanity_identity_set_with_block
1975
+ i
1976
+ 16
1977
+ 5
1978
+ 7
1979
+ 0
1980
+ 47
1981
+ 49
1982
+ 1
1983
+ 1
1984
+ 15
1985
+ 5
1986
+ 56
1987
+ 2
1988
+ 47
1989
+ 50
1990
+ 3
1991
+ 0
1992
+ 11
1993
+ I
1994
+ 3
1995
+ I
1996
+ 0
1997
+ I
1998
+ 0
1999
+ I
2000
+ 0
2001
+ I
2002
+ -2
2003
+ p
2004
+ 4
2005
+ x
2006
+ 10
2007
+ project_id
2008
+ x
2009
+ 13
2010
+ attr_accessor
2011
+ M
2012
+ 1
2013
+ p
2014
+ 2
2015
+ x
2016
+ 9
2017
+ for_block
2018
+ t
2019
+ n
2020
+ x
2021
+ 35
2022
+ test_vanity_identity_set_with_block
2023
+ i
2024
+ 10
2025
+ 57
2026
+ 19
2027
+ 0
2028
+ 15
2029
+ 20
2030
+ 0
2031
+ 49
2032
+ 0
2033
+ 0
2034
+ 11
2035
+ I
2036
+ 3
2037
+ I
2038
+ 1
2039
+ I
2040
+ 1
2041
+ I
2042
+ 1
2043
+ n
2044
+ p
2045
+ 1
2046
+ x
2047
+ 10
2048
+ project_id
2049
+ p
2050
+ 3
2051
+ I
2052
+ 0
2053
+ I
2054
+ 44
2055
+ I
2056
+ a
2057
+ x
2058
+ 47
2059
+ /Users/assaf/projects/vanity/test/rails_test.rb
2060
+ p
2061
+ 1
2062
+ x
2063
+ 10
2064
+ controller
2065
+ x
2066
+ 10
2067
+ use_vanity
2068
+ p
2069
+ 7
2070
+ I
2071
+ 0
2072
+ I
2073
+ 42
2074
+ I
2075
+ 0
2076
+ I
2077
+ 43
2078
+ I
2079
+ 8
2080
+ I
2081
+ 44
2082
+ I
2083
+ 10
2084
+ x
2085
+ 47
2086
+ /Users/assaf/projects/vanity/test/rails_test.rb
2087
+ p
2088
+ 0
2089
+ x
2090
+ 10
2091
+ class_eval
2092
+ x
2093
+ 11
2094
+ @controller
2095
+ s
2096
+ 3
2097
+ 576
2098
+ x
2099
+ 11
2100
+ project_id=
2101
+ x
2102
+ 5
2103
+ index
2104
+ x
2105
+ 3
2106
+ get
2107
+ x
2108
+ 15
2109
+ vanity_identity
2110
+ x
2111
+ 4
2112
+ send
2113
+ x
2114
+ 12
2115
+ assert_equal
2116
+ p
2117
+ 11
2118
+ I
2119
+ 0
2120
+ I
2121
+ 41
2122
+ I
2123
+ 0
2124
+ I
2125
+ 42
2126
+ I
2127
+ 9
2128
+ I
2129
+ 46
2130
+ I
2131
+ 16
2132
+ I
2133
+ 47
2134
+ I
2135
+ 1e
2136
+ I
2137
+ 48
2138
+ I
2139
+ 2e
2140
+ x
2141
+ 47
2142
+ /Users/assaf/projects/vanity/test/rails_test.rb
2143
+ p
2144
+ 0
2145
+ x
2146
+ 47
2147
+ test_redirects_and_loses_vanity_query_parameter
2148
+ M
2149
+ 1
2150
+ n
2151
+ n
2152
+ x
2153
+ 47
2154
+ test_redirects_and_loses_vanity_query_parameter
2155
+ i
2156
+ 44
2157
+ 5
2158
+ 7
2159
+ 0
2160
+ 44
2161
+ 43
2162
+ 1
2163
+ 80
2164
+ 49
2165
+ 2
2166
+ 1
2167
+ 13
2168
+ 7
2169
+ 3
2170
+ 7
2171
+ 4
2172
+ 64
2173
+ 49
2174
+ 5
2175
+ 2
2176
+ 15
2177
+ 13
2178
+ 7
2179
+ 6
2180
+ 7
2181
+ 7
2182
+ 64
2183
+ 49
2184
+ 5
2185
+ 2
2186
+ 15
2187
+ 47
2188
+ 49
2189
+ 8
2190
+ 2
2191
+ 15
2192
+ 5
2193
+ 7
2194
+ 9
2195
+ 64
2196
+ 47
2197
+ 49
2198
+ 10
2199
+ 1
2200
+ 11
2201
+ I
2202
+ 6
2203
+ I
2204
+ 0
2205
+ I
2206
+ 0
2207
+ I
2208
+ 0
2209
+ n
2210
+ p
2211
+ 11
2212
+ x
2213
+ 5
2214
+ index
2215
+ x
2216
+ 4
2217
+ Hash
2218
+ x
2219
+ 16
2220
+ new_from_literal
2221
+ x
2222
+ 3
2223
+ foo
2224
+ s
2225
+ 3
2226
+ bar
2227
+ x
2228
+ 3
2229
+ []=
2230
+ x
2231
+ 7
2232
+ _vanity
2233
+ s
2234
+ 3
2235
+ 567
2236
+ x
2237
+ 3
2238
+ get
2239
+ s
2240
+ 19
2241
+ /use_vanity?foo=bar
2242
+ x
2243
+ 20
2244
+ assert_redirected_to
2245
+ p
2246
+ 7
2247
+ I
2248
+ 0
2249
+ I
2250
+ 4d
2251
+ I
2252
+ 0
2253
+ I
2254
+ 4e
2255
+ I
2256
+ 23
2257
+ I
2258
+ 4f
2259
+ I
2260
+ 2c
2261
+ x
2262
+ 47
2263
+ /Users/assaf/projects/vanity/test/rails_test.rb
2264
+ p
2265
+ 0
2266
+ x
2267
+ 45
2268
+ test_sets_choices_from_vanity_query_parameter
2269
+ M
2270
+ 1
2271
+ n
2272
+ n
2273
+ x
2274
+ 45
2275
+ test_sets_choices_from_vanity_query_parameter
2276
+ i
2277
+ 24
2278
+ 5
2279
+ 7
2280
+ 0
2281
+ 47
2282
+ 49
2283
+ 1
2284
+ 1
2285
+ 49
2286
+ 2
2287
+ 0
2288
+ 49
2289
+ 3
2290
+ 0
2291
+ 19
2292
+ 0
2293
+ 15
2294
+ 4
2295
+ 10
2296
+ 56
2297
+ 4
2298
+ 50
2299
+ 5
2300
+ 0
2301
+ 11
2302
+ I
2303
+ 3
2304
+ I
2305
+ 1
2306
+ I
2307
+ 0
2308
+ I
2309
+ 0
2310
+ n
2311
+ p
2312
+ 6
2313
+ x
2314
+ 11
2315
+ pie_or_cake
2316
+ x
2317
+ 10
2318
+ experiment
2319
+ x
2320
+ 12
2321
+ alternatives
2322
+ x
2323
+ 5
2324
+ first
2325
+ M
2326
+ 1
2327
+ p
2328
+ 2
2329
+ x
2330
+ 9
2331
+ for_block
2332
+ t
2333
+ n
2334
+ x
2335
+ 45
2336
+ test_sets_choices_from_vanity_query_parameter
2337
+ i
2338
+ 74
2339
+ 1
2340
+ 38
2341
+ 0
2342
+ 15
2343
+ 5
2344
+ 48
2345
+ 1
2346
+ 15
2347
+ 5
2348
+ 7
2349
+ 2
2350
+ 44
2351
+ 43
2352
+ 3
2353
+ 79
2354
+ 49
2355
+ 4
2356
+ 1
2357
+ 13
2358
+ 7
2359
+ 5
2360
+ 7
2361
+ 6
2362
+ 64
2363
+ 49
2364
+ 7
2365
+ 2
2366
+ 15
2367
+ 47
2368
+ 49
2369
+ 8
2370
+ 2
2371
+ 15
2372
+ 5
2373
+ 5
2374
+ 7
2375
+ 9
2376
+ 47
2377
+ 49
2378
+ 10
2379
+ 1
2380
+ 49
2381
+ 11
2382
+ 0
2383
+ 10
2384
+ 49
2385
+ 2
2386
+ 8
2387
+ 50
2388
+ 3
2389
+ 47
2390
+ 49
2391
+ 12
2392
+ 1
2393
+ 15
2394
+ 5
2395
+ 5
2396
+ 7
2397
+ 9
2398
+ 47
2399
+ 49
2400
+ 10
2401
+ 1
2402
+ 21
2403
+ 1
2404
+ 0
2405
+ 49
2406
+ 13
2407
+ 1
2408
+ 47
2409
+ 49
2410
+ 12
2411
+ 1
2412
+ 11
2413
+ I
2414
+ 7
2415
+ I
2416
+ 0
2417
+ I
2418
+ 0
2419
+ I
2420
+ 0
2421
+ I
2422
+ -2
2423
+ p
2424
+ 14
2425
+ x
2426
+ 11
2427
+ @controller
2428
+ x
2429
+ 37
2430
+ setup_controller_request_and_response
2431
+ x
2432
+ 5
2433
+ index
2434
+ x
2435
+ 4
2436
+ Hash
2437
+ x
2438
+ 16
2439
+ new_from_literal
2440
+ x
2441
+ 7
2442
+ _vanity
2443
+ s
2444
+ 10
2445
+ aae9ff8081
2446
+ x
2447
+ 3
2448
+ []=
2449
+ x
2450
+ 3
2451
+ get
2452
+ x
2453
+ 11
2454
+ pie_or_cake
2455
+ x
2456
+ 10
2457
+ experiment
2458
+ x
2459
+ 6
2460
+ choose
2461
+ x
2462
+ 6
2463
+ assert
2464
+ x
2465
+ 8
2466
+ showing?
2467
+ p
2468
+ 11
2469
+ I
2470
+ 0
2471
+ I
2472
+ 55
2473
+ I
2474
+ 0
2475
+ I
2476
+ 56
2477
+ I
2478
+ 8
2479
+ I
2480
+ 57
2481
+ I
2482
+ 21
2483
+ I
2484
+ 58
2485
+ I
2486
+ 37
2487
+ I
2488
+ 59
2489
+ I
2490
+ 4a
2491
+ x
2492
+ 47
2493
+ /Users/assaf/projects/vanity/test/rails_test.rb
2494
+ p
2495
+ 0
2496
+ x
2497
+ 5
2498
+ times
2499
+ p
2500
+ 7
2501
+ I
2502
+ 0
2503
+ I
2504
+ 52
2505
+ I
2506
+ 0
2507
+ I
2508
+ 53
2509
+ I
2510
+ 10
2511
+ I
2512
+ 55
2513
+ I
2514
+ 18
2515
+ x
2516
+ 47
2517
+ /Users/assaf/projects/vanity/test/rails_test.rb
2518
+ p
2519
+ 1
2520
+ x
2521
+ 5
2522
+ first
2523
+ x
2524
+ 55
2525
+ test_does_nothing_with_vanity_query_parameter_for_posts
2526
+ M
2527
+ 1
2528
+ n
2529
+ n
2530
+ x
2531
+ 55
2532
+ test_does_nothing_with_vanity_query_parameter_for_posts
2533
+ i
2534
+ 83
2535
+ 5
2536
+ 7
2537
+ 0
2538
+ 47
2539
+ 49
2540
+ 1
2541
+ 1
2542
+ 49
2543
+ 2
2544
+ 0
2545
+ 49
2546
+ 3
2547
+ 0
2548
+ 19
2549
+ 0
2550
+ 15
2551
+ 5
2552
+ 7
2553
+ 4
2554
+ 44
2555
+ 43
2556
+ 5
2557
+ 80
2558
+ 49
2559
+ 6
2560
+ 1
2561
+ 13
2562
+ 7
2563
+ 7
2564
+ 7
2565
+ 8
2566
+ 64
2567
+ 49
2568
+ 9
2569
+ 2
2570
+ 15
2571
+ 13
2572
+ 7
2573
+ 10
2574
+ 7
2575
+ 11
2576
+ 64
2577
+ 49
2578
+ 9
2579
+ 2
2580
+ 15
2581
+ 47
2582
+ 49
2583
+ 12
2584
+ 2
2585
+ 15
2586
+ 5
2587
+ 7
2588
+ 13
2589
+ 47
2590
+ 49
2591
+ 14
2592
+ 1
2593
+ 15
2594
+ 5
2595
+ 5
2596
+ 7
2597
+ 0
2598
+ 47
2599
+ 49
2600
+ 1
2601
+ 1
2602
+ 20
2603
+ 0
2604
+ 49
2605
+ 15
2606
+ 1
2607
+ 10
2608
+ 77
2609
+ 2
2610
+ 8
2611
+ 78
2612
+ 3
2613
+ 47
2614
+ 49
2615
+ 16
2616
+ 1
2617
+ 11
2618
+ I
2619
+ 7
2620
+ I
2621
+ 1
2622
+ I
2623
+ 0
2624
+ I
2625
+ 0
2626
+ n
2627
+ p
2628
+ 17
2629
+ x
2630
+ 11
2631
+ pie_or_cake
2632
+ x
2633
+ 10
2634
+ experiment
2635
+ x
2636
+ 12
2637
+ alternatives
2638
+ x
2639
+ 5
2640
+ first
2641
+ x
2642
+ 5
2643
+ index
2644
+ x
2645
+ 4
2646
+ Hash
2647
+ x
2648
+ 16
2649
+ new_from_literal
2650
+ x
2651
+ 3
2652
+ foo
2653
+ s
2654
+ 3
2655
+ bar
2656
+ x
2657
+ 3
2658
+ []=
2659
+ x
2660
+ 7
2661
+ _vanity
2662
+ s
2663
+ 3
2664
+ 567
2665
+ x
2666
+ 4
2667
+ post
2668
+ x
2669
+ 7
2670
+ success
2671
+ x
2672
+ 15
2673
+ assert_response
2674
+ x
2675
+ 8
2676
+ showing?
2677
+ x
2678
+ 6
2679
+ assert
2680
+ p
2681
+ 11
2682
+ I
2683
+ 0
2684
+ I
2685
+ 5d
2686
+ I
2687
+ 0
2688
+ I
2689
+ 5e
2690
+ I
2691
+ 10
2692
+ I
2693
+ 5f
2694
+ I
2695
+ 33
2696
+ I
2697
+ 60
2698
+ I
2699
+ 3b
2700
+ I
2701
+ 61
2702
+ I
2703
+ 53
2704
+ x
2705
+ 47
2706
+ /Users/assaf/projects/vanity/test/rails_test.rb
2707
+ p
2708
+ 1
2709
+ x
2710
+ 5
2711
+ first
2712
+ x
2713
+ 14
2714
+ test_load_path
2715
+ M
2716
+ 1
2717
+ n
2718
+ n
2719
+ x
2720
+ 14
2721
+ test_load_path
2722
+ i
2723
+ 23
2724
+ 5
2725
+ 45
2726
+ 0
2727
+ 1
2728
+ 7
2729
+ 2
2730
+ 64
2731
+ 49
2732
+ 3
2733
+ 1
2734
+ 5
2735
+ 7
2736
+ 4
2737
+ 64
2738
+ 47
2739
+ 49
2740
+ 5
2741
+ 1
2742
+ 47
2743
+ 49
2744
+ 6
2745
+ 2
2746
+ 11
2747
+ I
2748
+ 4
2749
+ I
2750
+ 0
2751
+ I
2752
+ 0
2753
+ I
2754
+ 0
2755
+ n
2756
+ p
2757
+ 7
2758
+ x
2759
+ 4
2760
+ File
2761
+ n
2762
+ s
2763
+ 15
2764
+ tmp/experiments
2765
+ x
2766
+ 11
2767
+ expand_path
2768
+ s
2769
+ 68
2770
+ initializer.after_initialize
2771
+ $stdout << Vanity.playground.load_path
2772
+
2773
+ x
2774
+ 10
2775
+ load_rails
2776
+ x
2777
+ 12
2778
+ assert_equal
2779
+ p
2780
+ 5
2781
+ I
2782
+ 0
2783
+ I
2784
+ 67
2785
+ I
2786
+ 0
2787
+ I
2788
+ 68
2789
+ I
2790
+ 17
2791
+ x
2792
+ 47
2793
+ /Users/assaf/projects/vanity/test/rails_test.rb
2794
+ p
2795
+ 0
2796
+ x
2797
+ 23
2798
+ test_settable_load_path
2799
+ M
2800
+ 1
2801
+ n
2802
+ n
2803
+ x
2804
+ 23
2805
+ test_settable_load_path
2806
+ i
2807
+ 23
2808
+ 5
2809
+ 45
2810
+ 0
2811
+ 1
2812
+ 7
2813
+ 2
2814
+ 64
2815
+ 49
2816
+ 3
2817
+ 1
2818
+ 5
2819
+ 7
2820
+ 4
2821
+ 64
2822
+ 47
2823
+ 49
2824
+ 5
2825
+ 1
2826
+ 47
2827
+ 49
2828
+ 6
2829
+ 2
2830
+ 11
2831
+ I
2832
+ 4
2833
+ I
2834
+ 0
2835
+ I
2836
+ 0
2837
+ I
2838
+ 0
2839
+ n
2840
+ p
2841
+ 7
2842
+ x
2843
+ 4
2844
+ File
2845
+ n
2846
+ s
2847
+ 15
2848
+ tmp/predictions
2849
+ x
2850
+ 11
2851
+ expand_path
2852
+ s
2853
+ 112
2854
+ Vanity.playground.load_path = "predictions"
2855
+ initializer.after_initialize
2856
+ $stdout << Vanity.playground.load_path
2857
+
2858
+ x
2859
+ 10
2860
+ load_rails
2861
+ x
2862
+ 12
2863
+ assert_equal
2864
+ p
2865
+ 5
2866
+ I
2867
+ 0
2868
+ I
2869
+ 6e
2870
+ I
2871
+ 0
2872
+ I
2873
+ 6f
2874
+ I
2875
+ 17
2876
+ x
2877
+ 47
2878
+ /Users/assaf/projects/vanity/test/rails_test.rb
2879
+ p
2880
+ 0
2881
+ x
2882
+ 23
2883
+ test_absolute_load_path
2884
+ M
2885
+ 1
2886
+ n
2887
+ n
2888
+ x
2889
+ 23
2890
+ test_absolute_load_path
2891
+ i
2892
+ 23
2893
+ 5
2894
+ 45
2895
+ 0
2896
+ 1
2897
+ 7
2898
+ 2
2899
+ 64
2900
+ 49
2901
+ 3
2902
+ 1
2903
+ 5
2904
+ 7
2905
+ 4
2906
+ 64
2907
+ 47
2908
+ 49
2909
+ 5
2910
+ 1
2911
+ 47
2912
+ 49
2913
+ 6
2914
+ 2
2915
+ 11
2916
+ I
2917
+ 4
2918
+ I
2919
+ 0
2920
+ I
2921
+ 0
2922
+ I
2923
+ 0
2924
+ n
2925
+ p
2926
+ 7
2927
+ x
2928
+ 4
2929
+ File
2930
+ n
2931
+ s
2932
+ 8
2933
+ /tmp/var
2934
+ x
2935
+ 11
2936
+ expand_path
2937
+ s
2938
+ 109
2939
+ Vanity.playground.load_path = "/tmp/var"
2940
+ initializer.after_initialize
2941
+ $stdout << Vanity.playground.load_path
2942
+
2943
+ x
2944
+ 10
2945
+ load_rails
2946
+ x
2947
+ 12
2948
+ assert_equal
2949
+ p
2950
+ 5
2951
+ I
2952
+ 0
2953
+ I
2954
+ 76
2955
+ I
2956
+ 0
2957
+ I
2958
+ 77
2959
+ I
2960
+ 17
2961
+ x
2962
+ 47
2963
+ /Users/assaf/projects/vanity/test/rails_test.rb
2964
+ p
2965
+ 0
2966
+ x
2967
+ 23
2968
+ test_default_connection
2969
+ M
2970
+ 1
2971
+ n
2972
+ n
2973
+ x
2974
+ 23
2975
+ test_default_connection
2976
+ i
2977
+ 17
2978
+ 5
2979
+ 7
2980
+ 0
2981
+ 64
2982
+ 5
2983
+ 7
2984
+ 1
2985
+ 64
2986
+ 47
2987
+ 49
2988
+ 2
2989
+ 1
2990
+ 47
2991
+ 49
2992
+ 3
2993
+ 2
2994
+ 11
2995
+ I
2996
+ 4
2997
+ I
2998
+ 0
2999
+ I
3000
+ 0
3001
+ I
3002
+ 0
3003
+ n
3004
+ p
3005
+ 4
3006
+ s
3007
+ 24
3008
+ redis://localhost:6379/0
3009
+ s
3010
+ 67
3011
+ initializer.after_initialize
3012
+ $stdout << Vanity.playground.redis.id
3013
+
3014
+ x
3015
+ 10
3016
+ load_rails
3017
+ x
3018
+ 12
3019
+ assert_equal
3020
+ p
3021
+ 5
3022
+ I
3023
+ 0
3024
+ I
3025
+ 81
3026
+ I
3027
+ 0
3028
+ I
3029
+ 82
3030
+ I
3031
+ 11
3032
+ x
3033
+ 47
3034
+ /Users/assaf/projects/vanity/test/rails_test.rb
3035
+ p
3036
+ 0
3037
+ x
3038
+ 26
3039
+ test_configured_connection
3040
+ M
3041
+ 1
3042
+ n
3043
+ n
3044
+ x
3045
+ 26
3046
+ test_configured_connection
3047
+ i
3048
+ 17
3049
+ 5
3050
+ 7
3051
+ 0
3052
+ 64
3053
+ 5
3054
+ 7
3055
+ 1
3056
+ 64
3057
+ 47
3058
+ 49
3059
+ 2
3060
+ 1
3061
+ 47
3062
+ 49
3063
+ 3
3064
+ 2
3065
+ 11
3066
+ I
3067
+ 4
3068
+ I
3069
+ 0
3070
+ I
3071
+ 0
3072
+ I
3073
+ 0
3074
+ n
3075
+ p
3076
+ 4
3077
+ s
3078
+ 24
3079
+ redis://127.0.0.1:6379/0
3080
+ s
3081
+ 110
3082
+ Vanity.playground.redis = "127.0.0.1:6379"
3083
+ initializer.after_initialize
3084
+ $stdout << Vanity.playground.redis.id
3085
+
3086
+ x
3087
+ 10
3088
+ load_rails
3089
+ x
3090
+ 12
3091
+ assert_equal
3092
+ p
3093
+ 5
3094
+ I
3095
+ 0
3096
+ I
3097
+ 88
3098
+ I
3099
+ 0
3100
+ I
3101
+ 89
3102
+ I
3103
+ 11
3104
+ x
3105
+ 47
3106
+ /Users/assaf/projects/vanity/test/rails_test.rb
3107
+ p
3108
+ 0
3109
+ x
3110
+ 20
3111
+ test_test_connection
3112
+ M
3113
+ 1
3114
+ n
3115
+ n
3116
+ x
3117
+ 20
3118
+ test_test_connection
3119
+ i
3120
+ 17
3121
+ 5
3122
+ 7
3123
+ 0
3124
+ 64
3125
+ 5
3126
+ 7
3127
+ 1
3128
+ 64
3129
+ 47
3130
+ 49
3131
+ 2
3132
+ 1
3133
+ 47
3134
+ 49
3135
+ 3
3136
+ 2
3137
+ 11
3138
+ I
3139
+ 4
3140
+ I
3141
+ 0
3142
+ I
3143
+ 0
3144
+ I
3145
+ 0
3146
+ n
3147
+ p
3148
+ 4
3149
+ s
3150
+ 17
3151
+ Vanity::MockRedis
3152
+ s
3153
+ 94
3154
+ Vanity.playground.test!
3155
+ initializer.after_initialize
3156
+ $stdout << Vanity.playground.redis.class
3157
+
3158
+ x
3159
+ 10
3160
+ load_rails
3161
+ x
3162
+ 12
3163
+ assert_equal
3164
+ p
3165
+ 5
3166
+ I
3167
+ 0
3168
+ I
3169
+ 90
3170
+ I
3171
+ 0
3172
+ I
3173
+ 91
3174
+ I
3175
+ 11
3176
+ x
3177
+ 47
3178
+ /Users/assaf/projects/vanity/test/rails_test.rb
3179
+ p
3180
+ 0
3181
+ x
3182
+ 25
3183
+ test_connection_from_yaml
3184
+ M
3185
+ 1
3186
+ n
3187
+ n
3188
+ x
3189
+ 25
3190
+ test_connection_from_yaml
3191
+ i
3192
+ 94
3193
+ 29
3194
+ 66
3195
+ 1
3196
+ 26
3197
+ 93
3198
+ 0
3199
+ 15
3200
+ 45
3201
+ 0
3202
+ 1
3203
+ 7
3204
+ 2
3205
+ 64
3206
+ 49
3207
+ 3
3208
+ 1
3209
+ 15
3210
+ 45
3211
+ 4
3212
+ 5
3213
+ 7
3214
+ 6
3215
+ 64
3216
+ 7
3217
+ 7
3218
+ 64
3219
+ 49
3220
+ 8
3221
+ 2
3222
+ 19
3223
+ 0
3224
+ 15
3225
+ 20
3226
+ 0
3227
+ 7
3228
+ 9
3229
+ 64
3230
+ 49
3231
+ 10
3232
+ 1
3233
+ 15
3234
+ 20
3235
+ 0
3236
+ 49
3237
+ 11
3238
+ 0
3239
+ 15
3240
+ 5
3241
+ 7
3242
+ 12
3243
+ 64
3244
+ 5
3245
+ 7
3246
+ 13
3247
+ 64
3248
+ 47
3249
+ 49
3250
+ 14
3251
+ 1
3252
+ 47
3253
+ 49
3254
+ 15
3255
+ 2
3256
+ 30
3257
+ 8
3258
+ 81
3259
+ 26
3260
+ 45
3261
+ 4
3262
+ 16
3263
+ 20
3264
+ 0
3265
+ 49
3266
+ 17
3267
+ 0
3268
+ 49
3269
+ 18
3270
+ 1
3271
+ 15
3272
+ 27
3273
+ 34
3274
+ 45
3275
+ 4
3276
+ 19
3277
+ 20
3278
+ 0
3279
+ 49
3280
+ 17
3281
+ 0
3282
+ 49
3283
+ 18
3284
+ 1
3285
+ 15
3286
+ 11
3287
+ I
3288
+ 6
3289
+ I
3290
+ 1
3291
+ I
3292
+ 0
3293
+ I
3294
+ 0
3295
+ n
3296
+ p
3297
+ 20
3298
+ x
3299
+ 9
3300
+ FileUtils
3301
+ n
3302
+ s
3303
+ 10
3304
+ tmp/config
3305
+ x
3306
+ 6
3307
+ mkpath
3308
+ x
3309
+ 4
3310
+ File
3311
+ n
3312
+ s
3313
+ 20
3314
+ tmp/config/redis.yml
3315
+ s
3316
+ 1
3317
+ w
3318
+ x
3319
+ 4
3320
+ open
3321
+ s
3322
+ 32
3323
+ production: internal.local:6379
3324
+
3325
+ x
3326
+ 2
3327
+ <<
3328
+ x
3329
+ 5
3330
+ flush
3331
+ s
3332
+ 29
3333
+ redis://internal.local:6379/0
3334
+ s
3335
+ 67
3336
+ initializer.after_initialize
3337
+ $stdout << Vanity.playground.redis.id
3338
+
3339
+ x
3340
+ 10
3341
+ load_rails
3342
+ x
3343
+ 12
3344
+ assert_equal
3345
+ n
3346
+ x
3347
+ 4
3348
+ path
3349
+ x
3350
+ 6
3351
+ unlink
3352
+ n
3353
+ p
3354
+ 15
3355
+ I
3356
+ 0
3357
+ I
3358
+ 98
3359
+ I
3360
+ 0
3361
+ I
3362
+ 99
3363
+ I
3364
+ 11
3365
+ I
3366
+ 9a
3367
+ I
3368
+ 20
3369
+ I
3370
+ 9b
3371
+ I
3372
+ 29
3373
+ I
3374
+ 9c
3375
+ I
3376
+ 2f
3377
+ I
3378
+ 9d
3379
+ I
3380
+ 43
3381
+ I
3382
+ a2
3383
+ I
3384
+ 5e
3385
+ x
3386
+ 47
3387
+ /Users/assaf/projects/vanity/test/rails_test.rb
3388
+ p
3389
+ 1
3390
+ x
3391
+ 3
3392
+ yml
3393
+ x
3394
+ 33
3395
+ test_connection_from_yaml_missing
3396
+ M
3397
+ 1
3398
+ n
3399
+ n
3400
+ x
3401
+ 33
3402
+ test_connection_from_yaml_missing
3403
+ i
3404
+ 94
3405
+ 29
3406
+ 66
3407
+ 1
3408
+ 26
3409
+ 93
3410
+ 0
3411
+ 15
3412
+ 45
3413
+ 0
3414
+ 1
3415
+ 7
3416
+ 2
3417
+ 64
3418
+ 49
3419
+ 3
3420
+ 1
3421
+ 15
3422
+ 45
3423
+ 4
3424
+ 5
3425
+ 7
3426
+ 6
3427
+ 64
3428
+ 7
3429
+ 7
3430
+ 64
3431
+ 49
3432
+ 8
3433
+ 2
3434
+ 19
3435
+ 0
3436
+ 15
3437
+ 20
3438
+ 0
3439
+ 7
3440
+ 9
3441
+ 64
3442
+ 49
3443
+ 10
3444
+ 1
3445
+ 15
3446
+ 20
3447
+ 0
3448
+ 49
3449
+ 11
3450
+ 0
3451
+ 15
3452
+ 5
3453
+ 7
3454
+ 12
3455
+ 64
3456
+ 5
3457
+ 7
3458
+ 13
3459
+ 64
3460
+ 47
3461
+ 49
3462
+ 14
3463
+ 1
3464
+ 47
3465
+ 49
3466
+ 15
3467
+ 2
3468
+ 30
3469
+ 8
3470
+ 81
3471
+ 26
3472
+ 45
3473
+ 4
3474
+ 16
3475
+ 20
3476
+ 0
3477
+ 49
3478
+ 17
3479
+ 0
3480
+ 49
3481
+ 18
3482
+ 1
3483
+ 15
3484
+ 27
3485
+ 34
3486
+ 45
3487
+ 4
3488
+ 19
3489
+ 20
3490
+ 0
3491
+ 49
3492
+ 17
3493
+ 0
3494
+ 49
3495
+ 18
3496
+ 1
3497
+ 15
3498
+ 11
3499
+ I
3500
+ 6
3501
+ I
3502
+ 1
3503
+ I
3504
+ 0
3505
+ I
3506
+ 0
3507
+ n
3508
+ p
3509
+ 20
3510
+ x
3511
+ 9
3512
+ FileUtils
3513
+ n
3514
+ s
3515
+ 10
3516
+ tmp/config
3517
+ x
3518
+ 6
3519
+ mkpath
3520
+ x
3521
+ 4
3522
+ File
3523
+ n
3524
+ s
3525
+ 20
3526
+ tmp/config/redis.yml
3527
+ s
3528
+ 1
3529
+ w
3530
+ x
3531
+ 4
3532
+ open
3533
+ s
3534
+ 33
3535
+ development: internal.local:6379
3536
+
3537
+ x
3538
+ 2
3539
+ <<
3540
+ x
3541
+ 5
3542
+ flush
3543
+ s
3544
+ 24
3545
+ redis://localhost:6379/0
3546
+ s
3547
+ 67
3548
+ initializer.after_initialize
3549
+ $stdout << Vanity.playground.redis.id
3550
+
3551
+ x
3552
+ 10
3553
+ load_rails
3554
+ x
3555
+ 12
3556
+ assert_equal
3557
+ n
3558
+ x
3559
+ 4
3560
+ path
3561
+ x
3562
+ 6
3563
+ unlink
3564
+ n
3565
+ p
3566
+ 15
3567
+ I
3568
+ 0
3569
+ I
3570
+ a5
3571
+ I
3572
+ 0
3573
+ I
3574
+ a6
3575
+ I
3576
+ 11
3577
+ I
3578
+ a7
3579
+ I
3580
+ 20
3581
+ I
3582
+ a8
3583
+ I
3584
+ 29
3585
+ I
3586
+ a9
3587
+ I
3588
+ 2f
3589
+ I
3590
+ aa
3591
+ I
3592
+ 43
3593
+ I
3594
+ af
3595
+ I
3596
+ 5e
3597
+ x
3598
+ 47
3599
+ /Users/assaf/projects/vanity/test/rails_test.rb
3600
+ p
3601
+ 1
3602
+ x
3603
+ 3
3604
+ yml
3605
+ x
3606
+ 10
3607
+ load_rails
3608
+ M
3609
+ 1
3610
+ n
3611
+ n
3612
+ x
3613
+ 10
3614
+ load_rails
3615
+ i
3616
+ 91
3617
+ 26
3618
+ 93
3619
+ 0
3620
+ 15
3621
+ 29
3622
+ 56
3623
+ 0
3624
+ 45
3625
+ 0
3626
+ 1
3627
+ 7
3628
+ 2
3629
+ 64
3630
+ 49
3631
+ 3
3632
+ 1
3633
+ 19
3634
+ 1
3635
+ 15
3636
+ 20
3637
+ 1
3638
+ 7
3639
+ 4
3640
+ 64
3641
+ 49
3642
+ 5
3643
+ 1
3644
+ 15
3645
+ 20
3646
+ 1
3647
+ 20
3648
+ 0
3649
+ 49
3650
+ 5
3651
+ 1
3652
+ 15
3653
+ 20
3654
+ 1
3655
+ 49
3656
+ 6
3657
+ 0
3658
+ 15
3659
+ 45
3660
+ 7
3661
+ 8
3662
+ 7
3663
+ 9
3664
+ 64
3665
+ 56
3666
+ 10
3667
+ 50
3668
+ 11
3669
+ 1
3670
+ 30
3671
+ 8
3672
+ 87
3673
+ 26
3674
+ 93
3675
+ 1
3676
+ 15
3677
+ 24
3678
+ 13
3679
+ 45
3680
+ 12
3681
+ 13
3682
+ 12
3683
+ 49
3684
+ 14
3685
+ 1
3686
+ 10
3687
+ 73
3688
+ 8
3689
+ 82
3690
+ 15
3691
+ 20
3692
+ 1
3693
+ 49
3694
+ 15
3695
+ 0
3696
+ 25
3697
+ 8
3698
+ 87
3699
+ 15
3700
+ 92
3701
+ 1
3702
+ 27
3703
+ 34
3704
+ 92
3705
+ 0
3706
+ 27
3707
+ 11
3708
+ I
3709
+ 7
3710
+ I
3711
+ 2
3712
+ I
3713
+ 1
3714
+ I
3715
+ 1
3716
+ n
3717
+ p
3718
+ 16
3719
+ x
3720
+ 8
3721
+ Tempfile
3722
+ n
3723
+ s
3724
+ 7
3725
+ test.rb
3726
+ x
3727
+ 4
3728
+ open
3729
+ s
3730
+ 415
3731
+ begin require "bundler" ; Bundler.setup ; rescue LoadError ; end
3732
+ $:.delete_if { |path| path[/gems\/vanity-\d/] }
3733
+ $:.unshift File.expand_path("../lib")
3734
+ RAILS_ROOT = File.expand_path(".")
3735
+ RAILS_ENV = "production"
3736
+ require "initializer"
3737
+ require "active_support"
3738
+ Rails.configuration = Rails::Configuration.new
3739
+ initializer = Rails::Initializer.new(Rails.configuration)
3740
+ initializer.check_gem_dependencies
3741
+ require "vanity"
3742
+
3743
+ x
3744
+ 5
3745
+ write
3746
+ x
3747
+ 5
3748
+ flush
3749
+ x
3750
+ 3
3751
+ Dir
3752
+ n
3753
+ s
3754
+ 3
3755
+ tmp
3756
+ M
3757
+ 1
3758
+ p
3759
+ 2
3760
+ x
3761
+ 9
3762
+ for_block
3763
+ t
3764
+ n
3765
+ x
3766
+ 10
3767
+ load_rails
3768
+ i
3769
+ 23
3770
+ 5
3771
+ 7
3772
+ 0
3773
+ 21
3774
+ 1
3775
+ 1
3776
+ 49
3777
+ 1
3778
+ 0
3779
+ 47
3780
+ 49
3781
+ 2
3782
+ 0
3783
+ 63
3784
+ 2
3785
+ 47
3786
+ 49
3787
+ 3
3788
+ 1
3789
+ 49
3790
+ 4
3791
+ 0
3792
+ 11
3793
+ I
3794
+ 4
3795
+ I
3796
+ 0
3797
+ I
3798
+ 0
3799
+ I
3800
+ 0
3801
+ I
3802
+ -2
3803
+ p
3804
+ 5
3805
+ s
3806
+ 6
3807
+ |ruby
3808
+ x
3809
+ 4
3810
+ path
3811
+ x
3812
+ 4
3813
+ to_s
3814
+ x
3815
+ 4
3816
+ open
3817
+ x
3818
+ 4
3819
+ read
3820
+ p
3821
+ 5
3822
+ I
3823
+ 0
3824
+ I
3825
+ c4
3826
+ I
3827
+ 0
3828
+ I
3829
+ c5
3830
+ I
3831
+ 17
3832
+ x
3833
+ 47
3834
+ /Users/assaf/projects/vanity/test/rails_test.rb
3835
+ p
3836
+ 0
3837
+ x
3838
+ 5
3839
+ chdir
3840
+ x
3841
+ 13
3842
+ StandardError
3843
+ n
3844
+ x
3845
+ 3
3846
+ ===
3847
+ x
3848
+ 6
3849
+ close!
3850
+ p
3851
+ 15
3852
+ I
3853
+ 0
3854
+ I
3855
+ b3
3856
+ I
3857
+ 0
3858
+ I
3859
+ b4
3860
+ I
3861
+ 13
3862
+ I
3863
+ b5
3864
+ I
3865
+ 1c
3866
+ I
3867
+ c2
3868
+ I
3869
+ 24
3870
+ I
3871
+ c3
3872
+ I
3873
+ 2a
3874
+ I
3875
+ c4
3876
+ I
3877
+ 3d
3878
+ I
3879
+ c8
3880
+ I
3881
+ 5b
3882
+ x
3883
+ 47
3884
+ /Users/assaf/projects/vanity/test/rails_test.rb
3885
+ p
3886
+ 2
3887
+ x
3888
+ 4
3889
+ code
3890
+ x
3891
+ 3
3892
+ tmp
3893
+ x
3894
+ 8
3895
+ teardown
3896
+ M
3897
+ 1
3898
+ n
3899
+ n
3900
+ x
3901
+ 8
3902
+ teardown
3903
+ i
3904
+ 16
3905
+ 54
3906
+ 89
3907
+ 0
3908
+ 15
3909
+ 45
3910
+ 1
3911
+ 2
3912
+ 7
3913
+ 3
3914
+ 49
3915
+ 4
3916
+ 1
3917
+ 49
3918
+ 5
3919
+ 0
3920
+ 11
3921
+ I
3922
+ 2
3923
+ I
3924
+ 0
3925
+ I
3926
+ 0
3927
+ I
3928
+ 0
3929
+ n
3930
+ p
3931
+ 6
3932
+ x
3933
+ 8
3934
+ teardown
3935
+ x
3936
+ 19
3937
+ UseVanityController
3938
+ n
3939
+ x
3940
+ 12
3941
+ filter_chain
3942
+ x
3943
+ 4
3944
+ send
3945
+ x
3946
+ 5
3947
+ clear
3948
+ p
3949
+ 7
3950
+ I
3951
+ 0
3952
+ I
3953
+ cc
3954
+ I
3955
+ 0
3956
+ I
3957
+ cd
3958
+ I
3959
+ 4
3960
+ I
3961
+ ce
3962
+ I
3963
+ 10
3964
+ x
3965
+ 47
3966
+ /Users/assaf/projects/vanity/test/rails_test.rb
3967
+ p
3968
+ 0
3969
+ p
3970
+ 45
3971
+ I
3972
+ 2
3973
+ I
3974
+ d
3975
+ I
3976
+ b
3977
+ I
3978
+ f
3979
+ I
3980
+ 19
3981
+ I
3982
+ 1a
3983
+ I
3984
+ 27
3985
+ I
3986
+ 21
3987
+ I
3988
+ 35
3989
+ I
3990
+ 26
3991
+ I
3992
+ 43
3993
+ I
3994
+ 2c
3995
+ I
3996
+ 51
3997
+ I
3998
+ 32
3999
+ I
4000
+ 5f
4001
+ I
4002
+ 38
4003
+ I
4004
+ 6d
4005
+ I
4006
+ 41
4007
+ I
4008
+ 7b
4009
+ I
4010
+ 4d
4011
+ I
4012
+ 89
4013
+ I
4014
+ 52
4015
+ I
4016
+ 97
4017
+ I
4018
+ 5d
4019
+ I
4020
+ a5
4021
+ I
4022
+ 67
4023
+ I
4024
+ b3
4025
+ I
4026
+ 6e
4027
+ I
4028
+ c1
4029
+ I
4030
+ 76
4031
+ I
4032
+ cf
4033
+ I
4034
+ 81
4035
+ I
4036
+ dd
4037
+ I
4038
+ 88
4039
+ I
4040
+ eb
4041
+ I
4042
+ 90
4043
+ I
4044
+ f9
4045
+ I
4046
+ 98
4047
+ I
4048
+ 107
4049
+ I
4050
+ a5
4051
+ I
4052
+ 115
4053
+ I
4054
+ b3
4055
+ I
4056
+ 123
4057
+ I
4058
+ cc
4059
+ I
4060
+ 131
4061
+ x
4062
+ 47
4063
+ /Users/assaf/projects/vanity/test/rails_test.rb
4064
+ p
4065
+ 0
4066
+ p
4067
+ 7
4068
+ I
4069
+ 0
4070
+ I
4071
+ 1
4072
+ I
4073
+ 9
4074
+ I
4075
+ 3
4076
+ I
4077
+ 28
4078
+ I
4079
+ c
4080
+ I
4081
+ 49
4082
+ x
4083
+ 47
4084
+ /Users/assaf/projects/vanity/test/rails_test.rb
4085
+ p
4086
+ 0