vanity 1.3.0 → 1.4.0.beta

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.
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