uv-rays 1.3.8 → 2.0.1

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.
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true, encoding: ASCII-8BIT
2
+
1
3
  require 'uri'
2
4
  require 'cgi'
3
5
  require 'rubyntlm'
@@ -130,10 +132,9 @@ module UV
130
132
  transport.write(request_header).catch @error
131
133
 
132
134
  # Send file
133
- fileRef = @endpoint.loop.file file, File::RDONLY
134
- fileRef.progress do
135
+ fileRef = @endpoint.reactor.file file, File::RDONLY do
135
136
  # File is open and available for reading
136
- pSend = fileRef.send_file(transport, :raw)
137
+ pSend = fileRef.send_file(transport, using: :raw, wait: :promise)
137
138
  pSend.catch @error
138
139
  pSend.finally do
139
140
  fileRef.close
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'uri'
2
4
 
3
5
  module UV
@@ -40,7 +42,7 @@ module UV
40
42
  use_tls(client.tls_options) if tls
41
43
  end
42
44
 
43
- attr_accessor :request
45
+ attr_accessor :request, :reason
44
46
 
45
47
  def on_read(data, *args) # user to define
46
48
  @client.data_received(data)
@@ -56,7 +58,7 @@ module UV
56
58
  def on_close # user to define
57
59
  req = @request
58
60
  @request = nil
59
- @client.connection_closed(req)
61
+ @client.connection_closed(req, @reason)
60
62
  end
61
63
 
62
64
  def close_connection(request = nil)
@@ -79,7 +81,7 @@ module UV
79
81
  def initialize(host, options = {})
80
82
  @queue = []
81
83
  @parser = Http::Parser.new
82
- @thread = Libuv::Loop.current || Libuv::Loop.default
84
+ @thread = reactor
83
85
  @connection = nil
84
86
 
85
87
  @options = @@defaults.merge(options)
@@ -106,16 +108,16 @@ module UV
106
108
  attr_reader :cookiejar, :middleware
107
109
 
108
110
 
109
- def get options = {}, &blk; request(:get, options, &blk); end
110
- def head options = {}, &blk; request(:head, options, &blk); end
111
- def delete options = {}, &blk; request(:delete, options, &blk); end
112
- def put options = {}, &blk; request(:put, options, &blk); end
113
- def post options = {}, &blk; request(:post, options, &blk); end
114
- def patch options = {}, &blk; request(:patch, options, &blk); end
115
- def options options = {}, &blk; request(:options, options, &blk); end
111
+ def get(options = {}); request(:get, options); end
112
+ def head(options = {}); request(:head, options); end
113
+ def delete(options = {}); request(:delete, options); end
114
+ def put(options = {}); request(:put, options); end
115
+ def post(options = {}); request(:post, options); end
116
+ def patch(options = {}); request(:patch, options); end
117
+ def options(options = {}); request(:options, options); end
116
118
 
117
119
 
118
- def request(method, options = {}, &blk)
120
+ def request(method, options = {})
119
121
  options = @options.merge(options)
120
122
  options[:method] = method
121
123
 
@@ -154,7 +156,7 @@ module UV
154
156
  end
155
157
  end
156
158
 
157
- def connection_closed(request)
159
+ def connection_closed(request, reason)
158
160
  # We may have closed a previous connection
159
161
  if @parser.request && (request.nil? || request == @parser.request)
160
162
  @connection = nil
@@ -163,7 +165,7 @@ module UV
163
165
  @parser.eof
164
166
  elsif request.nil? && @parser.request.nil? && @queue.length > 0
165
167
  req = @queue.pop
166
- req.reject :connection_failure
168
+ req.reject(reason || :connection_failure)
167
169
  end
168
170
  end
169
171
 
@@ -233,7 +235,8 @@ module UV
233
235
  end
234
236
 
235
237
  def idle_timeout
236
- @parser.reason = :timeout
238
+ @parser.reason = :timeout if @parser.request
239
+ @connection.reason = :timeout
237
240
  close_connection
238
241
  end
239
242
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module UV
3
4
 
@@ -13,22 +14,25 @@ module UV
13
14
 
14
15
  def initialize(scheduler)
15
16
  # Create a dummy deferrable
16
- loop = scheduler.loop
17
- defer = loop.defer
17
+ reactor = scheduler.reactor
18
+ defer = reactor.defer
19
+
20
+ # Record a backtrace of where the schedule was created
21
+ @trace = caller
18
22
 
19
23
  # Setup common event variables
20
24
  @scheduler = scheduler
21
- @created = loop.now
25
+ @created = reactor.now
22
26
  @last_scheduled = @created
23
27
  @trigger_count = 0
24
28
 
25
29
  # init the promise
26
- super(loop, defer)
30
+ super(reactor, defer)
27
31
  end
28
32
 
29
33
  # Provide relevant inspect information
30
34
  def inspect
31
- insp = "#<#{self.class}:0x#{self.__id__.to_s(16)} "
35
+ insp = String.new("#<#{self.class}:0x#{self.__id__.to_s(16)} ")
32
36
  insp << "trigger_count=#{@trigger_count} "
33
37
  insp << "config=#{info} " if self.respond_to?(:info, true)
34
38
  insp << "next_scheduled=#{@next_scheduled} "
@@ -51,7 +55,7 @@ module UV
51
55
  # notify listeners of the event
52
56
  def trigger
53
57
  @trigger_count += 1
54
- @defer.notify(@loop.now, self)
58
+ @defer.notify(@reactor.now, self)
55
59
  end
56
60
  end
57
61
 
@@ -64,7 +68,7 @@ module UV
64
68
 
65
69
  # Updates the scheduled time
66
70
  def update(time)
67
- @last_scheduled = @loop.now
71
+ @last_scheduled = @reactor.now
68
72
 
69
73
  parsed_time = Scheduler.parse_in(time, :quiet)
70
74
  if parsed_time.nil?
@@ -114,14 +118,14 @@ module UV
114
118
  # can be used to reset a repeating timer
115
119
  def resume
116
120
  @paused = false
117
- @last_scheduled = @loop.now
121
+ @last_scheduled = @reactor.now
118
122
  reschedule
119
123
  end
120
124
 
121
125
  # Runs the event and reschedules
122
126
  def trigger
123
127
  super()
124
- @loop.next_tick do
128
+ @reactor.next_tick do
125
129
  # Do this next tick to avoid needless scheduling
126
130
  # if the event is stopped in the callback
127
131
  reschedule
@@ -133,7 +137,7 @@ module UV
133
137
 
134
138
 
135
139
  def next_time
136
- @last_scheduled = @loop.now
140
+ @last_scheduled = @reactor.now
137
141
  if @every.is_a? Fixnum
138
142
  @next_scheduled = @last_scheduled + @every
139
143
  else
@@ -156,13 +160,13 @@ module UV
156
160
 
157
161
 
158
162
  class Scheduler
159
- attr_reader :loop
163
+ attr_reader :reactor
160
164
  attr_reader :time_diff
161
165
  attr_reader :next
162
166
 
163
167
 
164
- def initialize(loop)
165
- @loop = loop
168
+ def initialize(reactor)
169
+ @reactor = reactor
166
170
  @schedules = Set.new
167
171
  @scheduled = []
168
172
  @next = nil # Next schedule time
@@ -174,8 +178,8 @@ module UV
174
178
 
175
179
  # as the libuv time is taken from an arbitrary point in time we
176
180
  # need to roughly synchronize between it and ruby's Time.now
177
- @loop.update_time
178
- @time_diff = (Time.now.to_f * 1000).to_i - @loop.now
181
+ @reactor.update_time
182
+ @time_diff = (Time.now.to_f * 1000).to_i - @reactor.now
179
183
  end
180
184
 
181
185
 
@@ -203,7 +207,7 @@ module UV
203
207
  # @return [::UV::OneShot]
204
208
  def in(time, callback = nil, &block)
205
209
  callback ||= block
206
- ms = @loop.now + Scheduler.parse_in(time)
210
+ ms = @reactor.now + Scheduler.parse_in(time)
207
211
  event = OneShot.new(self, ms)
208
212
 
209
213
  if callback.respond_to? :call
@@ -315,7 +319,7 @@ module UV
315
319
  # Ensures the current timer, if any, is still
316
320
  # accurate by checking the head of the schedule
317
321
  def check_timer
318
- @loop.update_time
322
+ @reactor.update_time
319
323
 
320
324
  existing = @next
321
325
  schedule = @scheduled.first
@@ -330,7 +334,7 @@ module UV
330
334
  end
331
335
 
332
336
  if not @next.nil?
333
- in_time = @next - @loop.now
337
+ in_time = @next - @reactor.now
334
338
 
335
339
  # Ensure there are never negative start times
336
340
  if in_time > 3
@@ -352,7 +356,7 @@ module UV
352
356
 
353
357
  # execute schedules that are within 3ms of this event
354
358
  # Basic timer coalescing..
355
- now = @loop.now + 3
359
+ now = @reactor.now + 3
356
360
  while @scheduled.first && @scheduled.first.next_scheduled <= now
357
361
  schedule = @scheduled.shift
358
362
  @schedules.delete(schedule)
@@ -364,7 +368,7 @@ module UV
364
368
 
365
369
  # Provide some assurances on timer failure
366
370
  def new_timer
367
- @timer = @loop.timer @timer_callback
371
+ @timer = @reactor.timer @timer_callback
368
372
  @timer.finally do
369
373
  new_timer
370
374
  unless @next.nil?
@@ -376,9 +380,9 @@ module UV
376
380
  end
377
381
 
378
382
  module Libuv
379
- class Loop
383
+ class Reactor
380
384
  def scheduler
381
- @scheduler ||= UV::Scheduler.new(@loop)
385
+ @scheduler ||= UV::Scheduler.new(@reactor)
382
386
  @scheduler
383
387
  end
384
388
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2006-2013, John Mettraux, jmettraux@gmail.com
3
5
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # Copyright (c) 2006-2013, John Mettraux, jmettraux@gmail.com
3
5
  #
@@ -198,7 +200,7 @@ module UV
198
200
 
199
201
  return (options[:drop_seconds] ? '0m' : '0s') if h.empty?
200
202
 
201
- s = DU_KEYS.inject('') { |r, key|
203
+ s = DU_KEYS.inject(String.new) { |r, key|
202
204
  count = h[key]
203
205
  count = nil if count == 0
204
206
  r << "#{count}#{key}" if count
@@ -1,8 +1,9 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  module UV
3
4
  class TcpServer < ::Libuv::TCP
4
- def initialize(loop, server, port, klass, *args)
5
- super(loop)
5
+ def initialize(reactor, server, port, klass, *args)
6
+ super(reactor)
6
7
 
7
8
  @klass = klass
8
9
  @args = args
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module UV
2
- VERSION = '1.3.8'
4
+ VERSION = '2.0.1'
3
5
  end
@@ -12,13 +12,13 @@ module TestConnect
12
12
 
13
13
  def on_close
14
14
  @disconnected = true
15
- @loop.stop
15
+ @reactor.stop
16
16
  end
17
17
 
18
18
  def on_read(data, connection, port = nil, udp_test = nil)
19
19
  @received = data
20
20
  close_connection(:after_writing)
21
- @loop.stop if udp_test # misc is set when test connect is a UDP connection
21
+ @reactor.stop if udp_test # misc is set when test connect is a UDP connection
22
22
  end
23
23
 
24
24
  def check
@@ -48,10 +48,17 @@ end
48
48
 
49
49
  describe UV::Connection do
50
50
  before :each do
51
- @loop = Libuv::Loop.new
51
+ @reactor = Libuv::Reactor.new
52
+ @reactor.notifier do |error, context|
53
+ begin
54
+ @general_failure << "Log called: #{context}\n#{error.message}\n#{error.backtrace.join("\n") if error.backtrace}\n"
55
+ rescue Exception
56
+ @general_failure << "error in logger #{e.inspect}"
57
+ end
58
+ end
52
59
  @general_failure = []
53
- @timeout = @loop.timer do
54
- @loop.stop
60
+ @timeout = @reactor.timer do
61
+ @reactor.stop
55
62
  @general_failure << "test timed out"
56
63
  end
57
64
  @timeout.start(5000)
@@ -74,15 +81,7 @@ describe UV::Connection do
74
81
 
75
82
  describe 'basic tcp client server' do
76
83
  it "should send some data and shutdown the socket" do
77
- @loop.run { |logger|
78
- logger.progress do |level, errorid, error|
79
- begin
80
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
81
- rescue Exception
82
- @general_failure << 'error in logger'
83
- end
84
- end
85
-
84
+ @reactor.run { |reactor|
86
85
  UV.start_server '127.0.0.1', 3210, TestServer
87
86
  @klass = UV.connect '127.0.0.1', 3210, TestConnect
88
87
  }
@@ -95,15 +94,7 @@ describe UV::Connection do
95
94
  end
96
95
 
97
96
  it "should not call connect on connection failure" do
98
- @loop.run { |logger|
99
- logger.progress do |level, errorid, error|
100
- begin
101
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
102
- rescue Exception
103
- @general_failure << 'error in logger'
104
- end
105
- end
106
-
97
+ @reactor.run { |reactor|
107
98
  @klass = UV.connect '127.0.0.1', 8123, TestConnect
108
99
  }
109
100
 
@@ -117,15 +108,7 @@ describe UV::Connection do
117
108
 
118
109
  describe 'basic tcp client server with tls' do
119
110
  it "should send some data and shutdown the socket" do
120
- @loop.run { |logger|
121
- logger.progress do |level, errorid, error|
122
- begin
123
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
124
- rescue Exception
125
- @general_failure << 'error in logger'
126
- end
127
- end
128
-
111
+ @reactor.run { |reactor|
129
112
  UV.start_server '127.0.0.1', 3212, TestServer, :use_tls
130
113
  @klass = UV.connect '127.0.0.1', 3212, TestConnect
131
114
  @klass.use_tls
@@ -141,15 +124,7 @@ describe UV::Connection do
141
124
 
142
125
  describe 'basic udp client server' do
143
126
  it "should send some data and close the socket" do
144
- @loop.run { |logger|
145
- logger.progress do |level, errorid, error|
146
- begin
147
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
148
- rescue Exception
149
- @general_failure << 'error in logger'
150
- end
151
- end
152
-
127
+ @reactor.run { |reactor|
153
128
  UV.open_datagram_socket TestServer, '127.0.0.1', 3210
154
129
  @klass = UV.open_datagram_socket TestConnect, '127.0.0.1', 3211
155
130
  @klass.send_datagram('hello', '127.0.0.1', 3210)
@@ -171,31 +171,32 @@ end
171
171
 
172
172
  describe UV::HttpEndpoint do
173
173
  before :each do
174
- @loop = Libuv::Loop.new
175
174
  @general_failure = []
176
- @timeout = @loop.timer do
177
- @loop.stop
175
+
176
+ @reactor = Libuv::Reactor.new
177
+ @reactor.notifier do |error, context|
178
+ begin
179
+ @general_failure << "Log called: #{context}\n#{error.message}\n#{error.backtrace.join("\n") if error.backtrace}\n"
180
+ rescue Exception
181
+ @general_failure << "error in logger #{e.inspect}"
182
+ end
183
+ end
184
+
185
+ @timeout = @reactor.timer do
186
+ @reactor.stop
178
187
  @general_failure << "test timed out"
179
188
  end
180
189
  @timeout.start(5000)
181
190
 
182
191
  @request_failure = proc { |err|
183
192
  @general_failure << err
184
- @loop.stop
193
+ @reactor.stop
185
194
  }
186
195
  end
187
196
 
188
197
  describe 'basic http request' do
189
198
  it "should send a request then receive a response" do
190
- @loop.run { |logger|
191
- logger.progress do |level, errorid, error|
192
- begin
193
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
194
- rescue Exception
195
- @general_failure << 'error in logger'
196
- end
197
- end
198
-
199
+ @reactor.run { |reactor|
199
200
  tcp = UV.start_server '127.0.0.1', 3250, HttpServer
200
201
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3250'
201
202
 
@@ -203,7 +204,7 @@ describe UV::HttpEndpoint do
203
204
  request.then(proc { |response|
204
205
  @response = response
205
206
  tcp.close
206
- @loop.stop
207
+ @reactor.stop
207
208
  }, @request_failure)
208
209
  }
209
210
 
@@ -219,15 +220,7 @@ describe UV::HttpEndpoint do
219
220
 
220
221
  it "should return the response when no length is given and the connection is closed" do
221
222
  # I've seen IoT devices do this (projector screen controllers etc)
222
- @loop.run { |logger|
223
- logger.progress do |level, errorid, error|
224
- begin
225
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
226
- rescue Exception
227
- @general_failure << 'error in logger'
228
- end
229
- end
230
-
223
+ @reactor.run { |reactor|
231
224
  tcp = UV.start_server '127.0.0.1', 3250, WeirdServer
232
225
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3250'
233
226
 
@@ -235,7 +228,7 @@ describe UV::HttpEndpoint do
235
228
  request.then(proc { |response|
236
229
  @response = response
237
230
  tcp.close
238
- @loop.stop
231
+ @reactor.stop
239
232
  }, @request_failure)
240
233
  }
241
234
 
@@ -250,29 +243,21 @@ describe UV::HttpEndpoint do
250
243
  end
251
244
 
252
245
  it "should send multiple requests on the same connection" do
253
- @loop.run { |logger|
254
- logger.progress do |level, errorid, error|
255
- begin
256
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
257
- rescue Exception
258
- @general_failure << 'error in logger'
259
- end
260
- end
261
-
246
+ @reactor.run { |reactor|
262
247
  tcp = UV.start_server '127.0.0.1', 3250, HttpServer
263
248
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3250'
264
249
 
265
250
  request = server.get(path: '/whatwhat', req: 1)
266
251
  request.then(proc { |response|
267
252
  @response = response
268
- #@loop.stop
253
+ #@reactor.stop
269
254
  }, @request_failure)
270
255
 
271
256
  request2 = server.get(path: '/', req: 2)
272
257
  request2.then(proc { |response|
273
258
  @response2 = response
274
259
  tcp.close
275
- @loop.stop
260
+ @reactor.stop
276
261
  }, @request_failure)
277
262
  }
278
263
 
@@ -293,15 +278,7 @@ describe UV::HttpEndpoint do
293
278
 
294
279
  describe 'old http request' do
295
280
  it "should send a request then receive a response" do
296
- @loop.run { |logger|
297
- logger.progress do |level, errorid, error|
298
- begin
299
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
300
- rescue Exception
301
- @general_failure << 'error in logger'
302
- end
303
- end
304
-
281
+ @reactor.run { |reactor|
305
282
  tcp = UV.start_server '127.0.0.1', 3250, OldServer
306
283
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3250'
307
284
 
@@ -309,7 +286,7 @@ describe UV::HttpEndpoint do
309
286
  request.then(proc { |response|
310
287
  @response = response
311
288
  tcp.close
312
- @loop.stop
289
+ @reactor.stop
313
290
  }, @request_failure)
314
291
  }
315
292
 
@@ -322,29 +299,21 @@ describe UV::HttpEndpoint do
322
299
  end
323
300
 
324
301
  it "should send multiple requests" do
325
- @loop.run { |logger|
326
- logger.progress do |level, errorid, error|
327
- begin
328
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
329
- rescue Exception
330
- @general_failure << 'error in logger'
331
- end
332
- end
333
-
302
+ @reactor.run { |reactor|
334
303
  tcp = UV.start_server '127.0.0.1', 3251, OldServer
335
304
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3251'
336
305
 
337
306
  request = server.get(:path => '/')
338
307
  request.then(proc { |response|
339
308
  @response = response
340
- #@loop.stop
309
+ #@reactor.stop
341
310
  }, @request_failure)
342
311
 
343
312
  request2 = server.get(:path => '/')
344
313
  request2.then(proc { |response|
345
314
  @response2 = response
346
315
  tcp.close
347
- @loop.stop
316
+ @reactor.stop
348
317
  }, @request_failure)
349
318
  }
350
319
 
@@ -365,15 +334,7 @@ describe UV::HttpEndpoint do
365
334
 
366
335
  describe 'Auth support' do
367
336
  it "should perform NTLM auth transparently" do
368
- @loop.run { |logger|
369
- logger.progress do |level, errorid, error|
370
- begin
371
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
372
- rescue Exception
373
- @general_failure << 'error in logger'
374
- end
375
- end
376
-
337
+ @reactor.run { |reactor|
377
338
  tcp = UV.start_server '127.0.0.1', 3252, NTLMServer
378
339
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3252', ntlm: {
379
340
  user: 'username',
@@ -385,7 +346,7 @@ describe UV::HttpEndpoint do
385
346
  request.then(proc { |response|
386
347
  @response = response
387
348
  tcp.close
388
- @loop.stop
349
+ @reactor.stop
389
350
  }, @request_failure)
390
351
  }
391
352
 
@@ -399,15 +360,7 @@ describe UV::HttpEndpoint do
399
360
  end
400
361
 
401
362
  it "should perform Digest auth transparently" do
402
- @loop.run { |logger|
403
- logger.progress do |level, errorid, error|
404
- begin
405
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
406
- rescue Exception
407
- @general_failure << 'error in logger'
408
- end
409
- end
410
-
363
+ @reactor.run { |reactor|
411
364
  tcp = UV.start_server '127.0.0.1', 3252, DigestServer
412
365
  server = UV::HttpEndpoint.new 'http://127.0.0.1:3252', digest: {
413
366
  user: 'Mufasa',
@@ -418,7 +371,7 @@ describe UV::HttpEndpoint do
418
371
  request.then(proc { |response|
419
372
  @response = response
420
373
  tcp.close
421
- @loop.stop
374
+ @reactor.stop
422
375
  }, @request_failure)
423
376
  }
424
377
 
@@ -434,15 +387,7 @@ describe UV::HttpEndpoint do
434
387
 
435
388
  describe 'cookies' do
436
389
  it "should accept cookies and send them on subsequent requests" do
437
- @loop.run { |logger|
438
- logger.progress do |level, errorid, error|
439
- begin
440
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
441
- rescue Exception
442
- @general_failure << 'error in logger'
443
- end
444
- end
445
-
390
+ @reactor.run { |reactor|
446
391
  tcp = UV.start_server '127.0.0.1', 3250, HttpServer
447
392
  @server = UV::HttpEndpoint.new 'http://127.0.0.1:3250'
448
393
 
@@ -451,7 +396,7 @@ describe UV::HttpEndpoint do
451
396
 
452
397
  request.then(proc { |response|
453
398
  tcp.close
454
- @loop.stop
399
+ @reactor.stop
455
400
  }, @request_failure)
456
401
  }
457
402
 
@@ -463,15 +408,7 @@ describe UV::HttpEndpoint do
463
408
 
464
409
  describe 'when things go wrong' do
465
410
  it "should reconnect after connection dropped and continue sending requests" do
466
- @loop.run { |logger|
467
- logger.progress do |level, errorid, error|
468
- begin
469
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
470
- rescue Exception
471
- @general_failure << 'error in logger'
472
- end
473
- end
474
-
411
+ @reactor.run { |reactor|
475
412
  tcp = UV.start_server '127.0.0.1', 6353, BrokenServer
476
413
  server = UV::HttpEndpoint.new 'http://127.0.0.1:6353'
477
414
 
@@ -479,7 +416,7 @@ describe UV::HttpEndpoint do
479
416
  request = server.get(:path => '/')
480
417
  request.then(proc { |response|
481
418
  @response = response
482
- #@loop.stop
419
+ #@reactor.stop
483
420
  }, proc { |error|
484
421
  @error = error
485
422
  })
@@ -488,7 +425,7 @@ describe UV::HttpEndpoint do
488
425
  request2.then(proc { |response|
489
426
  @response2 = response
490
427
  tcp.close
491
- @loop.stop
428
+ @reactor.stop
492
429
  }, @request_failure)
493
430
  }
494
431
 
@@ -505,15 +442,7 @@ describe UV::HttpEndpoint do
505
442
  end
506
443
 
507
444
  it "should reconnect after timeout and continue sending requests" do
508
- @loop.run { |logger|
509
- logger.progress do |level, errorid, error|
510
- begin
511
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
512
- rescue Exception
513
- @general_failure << 'error in logger'
514
- end
515
- end
516
-
445
+ @reactor.run { |reactor|
517
446
  tcp = UV.start_server '127.0.0.1', 6363, SlowServer
518
447
  server = UV::HttpEndpoint.new 'http://127.0.0.1:6363', inactivity_timeout: 500
519
448
 
@@ -521,7 +450,7 @@ describe UV::HttpEndpoint do
521
450
  request = server.get(:path => '/')
522
451
  request.then(proc { |response|
523
452
  @response = response
524
- #@loop.stop
453
+ #@reactor.stop
525
454
  }, proc { |error|
526
455
  @error = error
527
456
  })
@@ -530,7 +459,7 @@ describe UV::HttpEndpoint do
530
459
  request2.then(proc { |response|
531
460
  @response2 = response
532
461
  tcp.close
533
- @loop.stop
462
+ @reactor.stop
534
463
  }, @request_failure)
535
464
  }
536
465
 
@@ -547,15 +476,7 @@ describe UV::HttpEndpoint do
547
476
  end
548
477
 
549
478
  it "should fail if the server is not available" do
550
- @loop.run { |logger|
551
- logger.progress do |level, errorid, error|
552
- begin
553
- @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
554
- rescue Exception
555
- @general_failure << 'error in logger'
556
- end
557
- end
558
-
479
+ @reactor.run { |reactor|
559
480
  server = UV::HttpEndpoint.new 'http://127.0.0.1:6666', inactivity_timeout: 500
560
481
 
561
482
  @response = nil
@@ -564,7 +485,7 @@ describe UV::HttpEndpoint do
564
485
  request = server.get(:path => '/')
565
486
  request.then(proc { |response|
566
487
  @response = response
567
- #@loop.stop
488
+ #@reactor.stop
568
489
  }, proc { |error|
569
490
  @error = error
570
491
  })
@@ -572,10 +493,10 @@ describe UV::HttpEndpoint do
572
493
  request2 = server.get(:path => '/')
573
494
  request2.then(proc { |response|
574
495
  @response2 = response
575
- @loop.stop
496
+ @reactor.stop
576
497
  }, proc { |error|
577
498
  @error2 = error
578
- @loop.stop
499
+ @reactor.stop
579
500
  })
580
501
  }
581
502