ae_network_connection_exception 1.5.1 → 1.6.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: 4bc450ad55db0a8f4cb215456febc78863952696f9377e414319cbec89c48487
4
- data.tar.gz: 29e33ec6b78d8c20dfcb83461e59bba418da66eb4baeeab8f73003b5196318ca
3
+ metadata.gz: 670bacf7b250485b96be28e6623494ea3ef88e93830b27de6c7141d273d53737
4
+ data.tar.gz: cdcfd66f3fedd185fdb58fc8f6cdd2da0da799ddb22166a1ce270d608c8378fb
5
5
  SHA512:
6
- metadata.gz: 9a0d4961997581c28d8b134a8f99377c7797da61f66271451890ab12c05372a09b6cb3c76442cd6dc9765ea745275099e7d0d067aa352b34fd1281f6fc4f0d83
7
- data.tar.gz: f723b4bb0993cd613bae796e27d45b23a87f4f9f269bfb65ca214501e1c4b481cea0fa4faa5b0f564d629a19364ac6c4afa6614be2a0999a1787c18c08c1d51d
6
+ metadata.gz: 371c96edecc48bf85bde49dbe33a12afd216da04f40db63ae9bbbedbdcd200e10fe995467a9d60dc385542f1869e5f39440f77dbc731707cf0555ac1f36f4319
7
+ data.tar.gz: f0822a534739ba7d31c14b37873236d41c6a8adae6714ecd86f50ae95ee01ea800576963b158fee142ef88349fb3785f4dec8ec21addaeabf220cc851783baa1
data/LICENSE.txt CHANGED
@@ -1,6 +1,4 @@
1
- Copyright (c) 2015-2020 AppFolio, inc.
2
-
3
- MIT License
1
+ Copyright (c) 2015-2021 AppFolio, Inc
4
2
 
5
3
  Permission is hereby granted, free of charge, to any person obtaining
6
4
  a copy of this software and associated documentation files (the
@@ -3,24 +3,18 @@
3
3
  require_relative 'lib/ae_network_connection_exception/version'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = 'ae_network_connection_exception'
7
- spec.version = AeNetworkConnectionException::VERSION
8
- spec.author = 'Appfolio, Inc.'
9
- spec.email = 'opensource@appfolio.com'
10
- spec.summary = 'Provides sane exceptions for network failures'
11
- spec.description = 'Catch exceptions related to establishing a network connection and return a generic error.'
12
- spec.homepage = 'https://github.com/appfolio/ae_network_connection_exception'
13
- spec.license = 'MIT'
14
- spec.files = Dir['**/*'].select { |f| f[%r{^(lib/|test/|Rakefile$|README.md$|LICENSE.txt$|\w+\.*gemspec)}] }
15
- spec.require_paths = ['lib']
6
+ spec.name = 'ae_network_connection_exception'
7
+ spec.version = AeNetworkConnectionException::VERSION
8
+ spec.platform = Gem::Platform::RUBY
9
+ spec.author = 'AppFolio'
10
+ spec.email = 'opensource@appfolio.com'
11
+ spec.description = 'Catch exceptions related to establishing a network connection and return a generic error.'
12
+ spec.summary = 'Provides sane exceptions for network failures.'
13
+ spec.homepage = 'https://github.com/appfolio/ae_network_connection_exception'
14
+ spec.license = 'MIT'
15
+ spec.files = Dir['**/*'].select { |f| f[%r{^(lib/|LICENSE.txt|.*gemspec)}] }
16
+ spec.require_paths = ['lib']
17
+ spec.required_ruby_version = Gem::Requirement.new('>= 2.6.3')
16
18
 
17
- spec.add_development_dependency('appraisal', '~> 2.2')
18
- spec.add_development_dependency('bundler', ['>= 1.7', '< 3.0'])
19
- spec.add_development_dependency('minitest', '~> 5.0')
20
- spec.add_development_dependency('minitest-reporters', '~> 1.4')
21
- spec.add_development_dependency('rake', '~> 10.0')
22
- spec.add_development_dependency('rest-client', '~> 2.0')
23
- spec.add_development_dependency('rubocop', '~> 0.80')
24
- spec.add_development_dependency('rubocop-minitest', '~> 0.6.2')
25
- spec.add_development_dependency('simplecov', '~> 0.17')
19
+ spec.metadata['allowed_push_host'] = 'https://rubygems.org'
26
20
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AeNetworkConnectionException
4
- VERSION = '1.5.1'
4
+ VERSION = '1.6.0'
5
5
  end
metadata CHANGED
@@ -1,147 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ae_network_connection_exception
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
- - Appfolio, Inc.
8
- autorequire:
7
+ - AppFolio
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-04 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: appraisal
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '2.2'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '2.2'
27
- - !ruby/object:Gem::Dependency
28
- name: bundler
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '1.7'
34
- - - "<"
35
- - !ruby/object:Gem::Version
36
- version: '3.0'
37
- type: :development
38
- prerelease: false
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- version: '1.7'
44
- - - "<"
45
- - !ruby/object:Gem::Version
46
- version: '3.0'
47
- - !ruby/object:Gem::Dependency
48
- name: minitest
49
- requirement: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '5.0'
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- requirements:
58
- - - "~>"
59
- - !ruby/object:Gem::Version
60
- version: '5.0'
61
- - !ruby/object:Gem::Dependency
62
- name: minitest-reporters
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '1.4'
68
- type: :development
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '1.4'
75
- - !ruby/object:Gem::Dependency
76
- name: rake
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '10.0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '10.0'
89
- - !ruby/object:Gem::Dependency
90
- name: rest-client
91
- requirement: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '2.0'
96
- type: :development
97
- prerelease: false
98
- version_requirements: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '2.0'
103
- - !ruby/object:Gem::Dependency
104
- name: rubocop
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '0.80'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '0.80'
117
- - !ruby/object:Gem::Dependency
118
- name: rubocop-minitest
119
- requirement: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: 0.6.2
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: 0.6.2
131
- - !ruby/object:Gem::Dependency
132
- name: simplecov
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: '0.17'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: '0.17'
11
+ date: 2022-02-22 00:00:00.000000000 Z
12
+ dependencies: []
145
13
  description: Catch exceptions related to establishing a network connection and return
146
14
  a generic error.
147
15
  email: opensource@appfolio.com
@@ -150,18 +18,15 @@ extensions: []
150
18
  extra_rdoc_files: []
151
19
  files:
152
20
  - LICENSE.txt
153
- - README.md
154
- - Rakefile
155
21
  - ae_network_connection_exception.gemspec
156
22
  - lib/ae_network_connection_exception.rb
157
23
  - lib/ae_network_connection_exception/version.rb
158
- - test/ae_network_connection_exception_test.rb
159
- - test/test_helper.rb
160
24
  homepage: https://github.com/appfolio/ae_network_connection_exception
161
25
  licenses:
162
26
  - MIT
163
- metadata: {}
164
- post_install_message:
27
+ metadata:
28
+ allowed_push_host: https://rubygems.org
29
+ post_install_message:
165
30
  rdoc_options: []
166
31
  require_paths:
167
32
  - lib
@@ -169,15 +34,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
169
34
  requirements:
170
35
  - - ">="
171
36
  - !ruby/object:Gem::Version
172
- version: '0'
37
+ version: 2.6.3
173
38
  required_rubygems_version: !ruby/object:Gem::Requirement
174
39
  requirements:
175
40
  - - ">="
176
41
  - !ruby/object:Gem::Version
177
42
  version: '0'
178
43
  requirements: []
179
- rubygems_version: 3.0.6
180
- signing_key:
44
+ rubygems_version: 3.3.3
45
+ signing_key:
181
46
  specification_version: 4
182
- summary: Provides sane exceptions for network failures
47
+ summary: Provides sane exceptions for network failures.
183
48
  test_files: []
data/README.md DELETED
@@ -1,40 +0,0 @@
1
- # AeNetworkConnectionException
2
-
3
- Catch exceptions related to establishing a network connection and return a generic error.
4
-
5
- ## Installation
6
-
7
- Add this line to your application's Gemfile:
8
-
9
- ```ruby
10
- gem 'ae_network_connection_exception'
11
- ```
12
-
13
- And then execute:
14
-
15
- $ bundle
16
-
17
- Or install it yourself as:
18
-
19
- $ gem install ae_network_connection_exception
20
-
21
- ## Usage
22
-
23
- ```ruby
24
- AeNetworkConnectionException.try do
25
- # your code that will make a network call
26
- end
27
- ```
28
-
29
- If your network call failed to establish a network connection, an exception of this type will be thrown:
30
- ```ruby
31
- AeNetworkConnectionException::ConnectionNotEstablished
32
- ```
33
-
34
- ## Contributing
35
-
36
- 1. Fork it (https://github.com/appfolio/ae_network_connection_exception/fork)
37
- 2. Create your feature branch (`git checkout -b my-new-feature`)
38
- 3. Commit your changes (`git commit -am 'Add some feature'`)
39
- 4. Push to the branch (`git push origin my-new-feature`)
40
- 5. Create a new Pull Request
data/Rakefile DELETED
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'bundler'
4
-
5
- begin
6
- Bundler.setup(:default, :development)
7
- rescue Bundler::BundlerError => e
8
- warn e.message
9
- warn 'Run `bundle install` to install missing gems'
10
- exit e.status_code
11
- end
12
-
13
- require 'rake/testtask'
14
-
15
- Rake::TestTask.new(:test) do |test|
16
- test.libs << 'lib' << 'test'
17
- test.pattern = 'test/**/*_test.rb'
18
- test.verbose = true
19
- end
20
-
21
- task default: :test
@@ -1,114 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module AeNetworkConnectionException
6
- class AeNetworkConnectionExceptionTest < Minitest::Test
7
- def test_that_it_has_a_version_number
8
- refute_nil ::AeNetworkConnectionException::VERSION
9
- end
10
-
11
- def test_connection_not_established_exception
12
- parent_exception = AeNetworkConnectionException::ConnectionNotEstablished.new('Parent Message')
13
-
14
- assert_nil parent_exception.cause
15
- assert_equal 'Parent Message', parent_exception.message
16
-
17
- begin
18
- child_exception = nil
19
- begin
20
- raise StandardError, 'New Child Message'
21
- rescue StandardError => e
22
- child_exception = e
23
- AeNetworkConnectionException::ConnectionNotEstablished.new('New Parent Message')
24
- end
25
- rescue AeNetworkConnectionException::ConnectionNotEstablished => e
26
- refute_nil child_exception
27
- assert_equal child_exception, e.cause
28
- assert_equal 'New Parent Message, cause => StandardError: New Child Message', e.message
29
- end
30
- end
31
-
32
- def test_ae_network_connection_exception_try__doesnt_catch_non_network_exceptions
33
- exception = StandardError.new
34
- e = return_raised_error do
35
- AeNetworkConnectionException.try do
36
- raise exception
37
- end
38
- end
39
- assert_equal exception, e
40
- end
41
-
42
- def test_ae_network_connection_exception_try__raises_connection_not_establised_exception
43
- AeNetworkConnectionException.exception_signatures.each do |e|
44
- assert_connection_not_established_thrown_for(e)
45
- end
46
-
47
- econnreset = Errno::ECONNRESET.new('Connection timed out - connect(2) for "example.com" port 443')
48
- assert_connection_not_established_not_thrown_for(econnreset)
49
- etimeout = Errno::ETIMEDOUT.new('Connection timed out - recvfrom(2) for "example.com" port 443')
50
- assert_connection_not_established_not_thrown_for(etimeout)
51
- end
52
-
53
- def test_ae_network_connection_exception_try__raises_connection_not_establised_exception_rest_client_open_timeout
54
- open_timeout = RestClient::Exceptions::OpenTimeout.new
55
- assert_connection_not_established_thrown_for(open_timeout)
56
- end
57
-
58
- def test_exception_signatures
59
- assert_equal expected_signatures.size, AeNetworkConnectionException.exception_signatures.size
60
-
61
- expected_signatures.each do |e|
62
- assert_includes AeNetworkConnectionException.exception_signatures, e
63
- end
64
- end
65
-
66
- def test_rest_client_not_defined
67
- old = RestClient::Exceptions::OpenTimeout
68
- RestClient::Exceptions.send(:remove_const, :OpenTimeout)
69
-
70
- assert_empty AeNetworkConnectionException.send(:other_exceptions)
71
- ensure
72
- RestClient::Exceptions.const_set(:OpenTimeout, old)
73
- end
74
-
75
- private
76
-
77
- def expected_signatures
78
- [
79
- SocketError.new('getaddrinfo: Name or service not known'),
80
- Errno::ECONNREFUSED.new('Connection refused - connect(2) for "example.com" port 443'),
81
- Errno::ETIMEDOUT.new('Connection timed out - connect(2) for "example.com" port 443'),
82
- Net::OpenTimeout.new('message'),
83
- Errno::ECONNRESET.new('Connection reset by peer - SSL_connect'),
84
- Errno::EHOSTUNREACH.new('No route to host - connect(2) for "example.com" port 443'),
85
- Errno::ENETUNREACH.new('Network is unreachable - connect(2) for "example.com" port 443')
86
- ]
87
- end
88
-
89
- def assert_connection_not_established_thrown_for(exception)
90
- e = return_raised_error do
91
- AeNetworkConnectionException.try do
92
- raise exception
93
- end
94
- end
95
- assert_equal AeNetworkConnectionException::ConnectionNotEstablished, e.class
96
- assert_equal exception, e.cause
97
- end
98
-
99
- def assert_connection_not_established_not_thrown_for(exception)
100
- e = return_raised_error do
101
- AeNetworkConnectionException.try do
102
- raise exception
103
- end
104
- end
105
- assert_equal exception, e
106
- end
107
-
108
- def return_raised_error
109
- yield
110
- rescue StandardError => e
111
- e
112
- end
113
- end
114
- end
data/test/test_helper.rb DELETED
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'bundler'
4
-
5
- begin
6
- Bundler.setup(:default, :development)
7
- rescue Bundler::BundlerError => e
8
- warn e.message
9
- warn 'Run `bundle install` to install missing gems'
10
- exit e.status_code
11
- end
12
-
13
- if ENV['WITH_COVERAGE'] == 'true'
14
- require 'simplecov'
15
- SimpleCov.start do
16
- enable_coverage :branch
17
- add_filter %r{\A/test}
18
- end
19
- end
20
-
21
- require 'ae_network_connection_exception'
22
- require 'minitest/autorun'
23
- require 'minitest/reporters'
24
- require 'rest-client'
25
-
26
- MiniTest::Reporters.use!