Class: SSLVersion
- Inherits:
-
Object
- Object
- SSLVersion
- Defined in:
- lib/support/ssl_version.rb
Instance Attribute Summary collapse
-
#errored ⇒ Object
Returns the value of attribute errored.
-
#failed ⇒ Object
Returns the value of attribute failed.
-
#missing ⇒ Object
Returns the value of attribute missing.
-
#success ⇒ Object
Returns the value of attribute success.
Instance Method Summary collapse
-
#initialize ⇒ SSLVersion
constructor
A new instance of SSLVersion.
- #print_summary ⇒ Object
- #test_gateways(min_version = :TLS1_1) ⇒ Object
Constructor Details
#initialize ⇒ SSLVersion
Returns a new instance of SSLVersion.
7 8 9 10 |
# File 'lib/support/ssl_version.rb', line 7 def initialize @gateways = GatewaySupport.new.gateways @success, @failed, @missing, @errored = [], [], [], [] end |
Instance Attribute Details
#errored ⇒ Object
Returns the value of attribute errored.
5 6 7 |
# File 'lib/support/ssl_version.rb', line 5 def errored @errored end |
#failed ⇒ Object
Returns the value of attribute failed.
5 6 7 |
# File 'lib/support/ssl_version.rb', line 5 def failed @failed end |
#missing ⇒ Object
Returns the value of attribute missing.
5 6 7 |
# File 'lib/support/ssl_version.rb', line 5 def missing @missing end |
#success ⇒ Object
Returns the value of attribute success.
5 6 7 |
# File 'lib/support/ssl_version.rb', line 5 def success @success end |
Instance Method Details
#print_summary ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/support/ssl_version.rb', line 42 def print_summary puts "\n\nSucceeded gateways (#{success.length})" puts "\n\nFailed Gateways (#{failed.length}):" failed.each do |f| puts "#{f[:gateway].name} - #{f[:message]}" end puts "\n\nError Gateways (#{errored.length}):" errored.each do |e| puts "#{e[:gateway].name} - #{e[:message]}" end if missing.length > 0 puts "\n\nGateways missing live_url (#{missing.length}):" missing.each do |m| puts m.name end end end |
#test_gateways(min_version = :TLS1_1) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/support/ssl_version.rb', line 12 def test_gateways(min_version = :TLS1_1) raise 'Requires Ruby 2.5 or better' unless Net::HTTP.instance_methods.include?(:min_version=) puts "Verifying #{@gateways.count} gateways for SSL min_version=#{min_version}\n\n" @gateways.each do |g| unless g.live_url missing << g unless g.abstract_class next end uri = URI.parse(g.live_url) result, = test_min_version(uri, min_version) case result when :success print '.' success << g when :fail print 'F' failed << { gateway: g, message: } when :error print 'E' errored << { gateway: g, message: } end end print_summary end |