nonnative 1.15.0 → 1.16.0

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
  SHA256:
3
- metadata.gz: 9da36cc51d6dd5d1a440767c808455d81dacbf9aa425c185b6d3c3cba24ba949
4
- data.tar.gz: b5f13df29130761c28cf96f277392ab7b7a9f0a479ed7539d54b3ffc207687bf
3
+ metadata.gz: 06c156ebea189af501939979653772a2f87dcb6c262f373134d061bd0f07a48c
4
+ data.tar.gz: 6d41fd8ac177d6565517423c73b031c0c4e03512f2406e7be6f12e2611dfe87d
5
5
  SHA512:
6
- metadata.gz: 7a7efe67bb02696eec25e19ff231199219a4e709fb74b746d3d7326358131331f7cb6300e9ec466eec1a7d644d31968d9015ca2a94187d8870fa5c8e6fdf20a1
7
- data.tar.gz: 2ef73fa52844639694efa346214f95f6705ffbfeea2b8ab6a1476948cd485a7aaf7269150be72b43dd7d660021c77beb8c61a875a10782061557963824c30e03
6
+ metadata.gz: a34000c945bc7902645dd32a381311160353193efce3fcc9fbdc563a9e191b192b5e14b72bb4c1efa9d87a821558b801ba002d213e5aad7dceeef1f1ebf12e92
7
+ data.tar.gz: 9d31997089ebaf6e01b4394b4b13d916791e8d5366acb0fd78e09db3cc662609202d1ac0d6ed605dda35796eae84201f607e5255cf6a25e8e2dedd01ef87e43d
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nonnative (1.15.0)
4
+ nonnative (1.16.0)
5
5
  cucumber (~> 3.1, >= 3.1.2)
6
6
  grpc (~> 1.28)
7
+ puma (~> 4.3, >= 4.3.3)
7
8
  rest-client (~> 2.1)
8
9
  rspec-benchmark (~> 0.6.0)
9
10
  rspec-expectations (~> 3.9, >= 3.9.2)
@@ -46,7 +47,7 @@ GEM
46
47
  cucumber-expressions (6.0.1)
47
48
  cucumber-tag_expressions (1.1.1)
48
49
  cucumber-wire (0.0.1)
49
- diff-lcs (1.4.2)
50
+ diff-lcs (1.4.4)
50
51
  docile (1.3.2)
51
52
  domain_name (0.5.20190701)
52
53
  unf (>= 0.0.5, < 1.0.0)
@@ -79,6 +80,7 @@ GEM
79
80
  mustermann (1.1.1)
80
81
  ruby2_keywords (~> 0.0.1)
81
82
  netrc (0.11.0)
83
+ nio4r (2.5.2)
82
84
  nokogiri (1.10.9)
83
85
  mini_portile2 (~> 2.4.0)
84
86
  parallel (1.19.2)
@@ -89,6 +91,8 @@ GEM
89
91
  tty-color (~> 0.5)
90
92
  protocol (2.0.0)
91
93
  ruby_parser (~> 3.0)
94
+ puma (4.3.5)
95
+ nio4r (~> 2.0)
92
96
  rack (2.2.3)
93
97
  rack-protection (2.0.8.1)
94
98
  rack
@@ -4,11 +4,12 @@ require 'socket'
4
4
  require 'timeout'
5
5
  require 'thwait'
6
6
  require 'yaml'
7
- require 'webrick'
8
7
 
9
8
  require 'grpc'
10
9
  require 'sinatra'
11
10
  require 'rest-client'
11
+ require 'puma'
12
+ require 'puma/server'
12
13
 
13
14
  require 'nonnative/version'
14
15
  require 'nonnative/error'
@@ -26,7 +26,15 @@ module Nonnative
26
26
  end
27
27
 
28
28
  def wait_start
29
- server.wait_till_running(service.timeout)
29
+ timeout.perform do
30
+ super until server.running?
31
+ end
32
+ end
33
+
34
+ def wait_stop
35
+ timeout.perform do
36
+ super until server.stopped?
37
+ end
30
38
  end
31
39
 
32
40
  private
@@ -2,23 +2,33 @@
2
2
 
3
3
  module Nonnative
4
4
  class HTTPServer < Nonnative::Server
5
+ def initialize(service)
6
+ @server = Puma::Server.new(app, Puma::Events.strings)
7
+
8
+ super service
9
+ end
10
+
5
11
  protected
6
12
 
7
13
  def perform_start
8
- options = {
9
- Host: '0.0.0.0',
10
- Port: proxy.port,
11
- Logger: ::WEBrick::Log.new('/dev/null'),
12
- AccessLog: []
13
- }
14
-
15
- Rack::Handler::WEBrick.run(app, options) do |server|
16
- @server = server
17
- end
14
+ server.add_tcp_listener '0.0.0.0', proxy.port
15
+ server.run.join
18
16
  end
19
17
 
20
18
  def perform_stop
21
- server.shutdown
19
+ server.stop(true)
20
+ end
21
+
22
+ def wait_start
23
+ timeout.perform do
24
+ super until server.running
25
+ end
26
+ end
27
+
28
+ def wait_stop
29
+ timeout.perform do
30
+ super while server.running
31
+ end
22
32
  end
23
33
 
24
34
  private
@@ -16,11 +16,11 @@ module Nonnative
16
16
  attr_reader :service, :timeout
17
17
 
18
18
  def wait_start
19
- sleep 0.2
19
+ sleep 0.1
20
20
  end
21
21
 
22
22
  def wait_stop
23
- sleep 0.2
23
+ sleep 0.1
24
24
  end
25
25
  end
26
26
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Nonnative
4
- VERSION = '1.15.0'
4
+ VERSION = '1.16.0'
5
5
  end
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
26
26
 
27
27
  spec.add_dependency 'cucumber', '~> 3.1', '>= 3.1.2'
28
28
  spec.add_dependency 'grpc', '~> 1.28'
29
+ spec.add_dependency 'puma', '~> 4.3', '>= 4.3.3'
29
30
  spec.add_dependency 'rest-client', '~> 2.1'
30
31
  spec.add_dependency 'rspec-benchmark', '~> 0.6.0'
31
32
  spec.add_dependency 'rspec-expectations', '~> 3.9', '>= 3.9.2'
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nonnative
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0
4
+ version: 1.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Falkowski
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
11
  date: 2020-07-03 00:00:00.000000000 Z
@@ -44,6 +44,26 @@ dependencies:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '1.28'
47
+ - !ruby/object:Gem::Dependency
48
+ name: puma
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '4.3'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 4.3.3
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '4.3'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 4.3.3
47
67
  - !ruby/object:Gem::Dependency
48
68
  name: rest-client
49
69
  requirement: !ruby/object:Gem::Requirement
@@ -281,7 +301,7 @@ homepage: https://github.com/alexfalkowski/nonnative
281
301
  licenses:
282
302
  - Unlicense
283
303
  metadata: {}
284
- post_install_message:
304
+ post_install_message:
285
305
  rdoc_options: []
286
306
  require_paths:
287
307
  - lib
@@ -296,8 +316,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
296
316
  - !ruby/object:Gem::Version
297
317
  version: '0'
298
318
  requirements: []
299
- rubygems_version: 3.0.3
300
- signing_key:
319
+ rubygems_version: 3.0.8
320
+ signing_key:
301
321
  specification_version: 4
302
322
  summary: Allows you to keep using the power of ruby to test other systems
303
323
  test_files: []