uv-rays 1.3.0 → 1.3.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.
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