uv-rays 1.3.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bbe9019bb0b5b548daf337f12f4f6d6eed42d3d6
4
- data.tar.gz: 1b5779c34179033260c79ec5afeb088c470a8180
3
+ metadata.gz: 83f5df072860d4a4c1dddac6c085e3b1527ad255
4
+ data.tar.gz: 7b5dbd01178c2b1076c5b195e31c036f30348d85
5
5
  SHA512:
6
- metadata.gz: 7e14c928bf63dbd3ebfd230dbf2dfcff281328e7e6376d551838ba0f3a3fd7c8d5891e8ab5b54ca913267b5053f26cbe53b31062b0cfc7ec40acf556fd9384e2
7
- data.tar.gz: e3aad461e23c4e60a52fbea8114a8e54b7fcb94f327f08ca6db810f5c8a41e3aa9a607bfb4185f7136f2bbd78dda3a6cfdd7216db04651ff2790f957f1035e42
6
+ metadata.gz: 0d99d16dab000325b21e4c7a4f382a9282ce907b6f20163de66534267a2a70335546c284906903299d1794cd3fee3a729a34ece30f9bdadf04dec294500ad82b
7
+ data.tar.gz: e33f55de20522f1d4f451a7221cd31e2408c3a4c7bfa0cb7bd9b13bec858830e35ff6798007bab3cc9a19fd412b31c597783eeb2bd141566729b69b47d2aa240
@@ -154,11 +154,14 @@ module UV
154
154
 
155
155
  def connection_closed(request)
156
156
  # We may have closed a previous connection
157
- if request.nil? || request == @parser.request
157
+ if @parser.request && (request.nil? || request == @parser.request)
158
158
  @connection = nil
159
159
  stop_timer
160
160
 
161
161
  @parser.eof
162
+ elsif request.nil? && @parser.request.nil? && @queue.length > 0
163
+ req = @queue.pop
164
+ req.reject :connection_failure
162
165
  end
163
166
  end
164
167
 
@@ -1,3 +1,3 @@
1
1
  module UV
2
- VERSION = '1.3.0'
2
+ VERSION = '1.3.1'
3
3
  end
@@ -456,5 +456,46 @@ describe UV::HttpEndpoint do
456
456
  expect(@response2.keep_alive).to eq(true)
457
457
  expect(@response2.body).to eq('okg')
458
458
  end
459
+
460
+ it "should fail if the server is not available" do
461
+ @loop.run { |logger|
462
+ logger.progress do |level, errorid, error|
463
+ begin
464
+ @general_failure << "Log called: #{level}: #{errorid}\n#{error.message}\n#{error.backtrace.join("\n")}\n"
465
+ rescue Exception
466
+ @general_failure << 'error in logger'
467
+ end
468
+ end
469
+
470
+ server = UV::HttpEndpoint.new 'http://127.0.0.1:6666', inactivity_timeout: 500
471
+
472
+ @response = nil
473
+ @response2 = nil
474
+
475
+ request = server.get(:path => '/')
476
+ request.then(proc { |response|
477
+ @response = response
478
+ #@loop.stop
479
+ }, proc { |error|
480
+ @error = error
481
+ })
482
+
483
+ request2 = server.get(:path => '/')
484
+ request2.then(proc { |response|
485
+ @response2 = response
486
+ @loop.stop
487
+ }, proc { |error|
488
+ @error2 = error
489
+ @loop.stop
490
+ })
491
+ }
492
+
493
+ expect(@general_failure).to eq([])
494
+ expect(@response).to eq(nil)
495
+ expect(@error).to eq(:connection_failure)
496
+
497
+ expect(@response2).to eq(nil)
498
+ expect(@error2).to eq(:connection_failure)
499
+ end
459
500
  end
460
501
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uv-rays
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen von Takach
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-04 00:00:00.000000000 Z
11
+ date: 2016-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: libuv