Class: Conify::ManifestTest
- Defined in:
- lib/conify/test/manifest_test.rb
Constant Summary collapse
- OUTPUT_COMPLETION =
true
Instance Attribute Summary
Attributes inherited from Test
Instance Method Summary collapse
Methods inherited from Test
#api_requires?, #env, #initialize, #run, #test, #url
Methods included from Helpers
#allow_user_response, #ask_for_conflux_creds, #ask_for_password, #ask_for_password_on_windows, #camelize, #display, #echo_off, #echo_on, #error, #exclusive_deep_merge, #format_with_bang, #host, #host_url, #kensa_manifest_name, #kensa_manifest_path, #manifest_content, #manifest_filename, #manifest_path, #manually_added_methods, #open_url, #running_on_a_mac?, #running_on_windows?, #site_url, #to_table, #with_tty
Constructor Details
This class inherits a constructor from Conify::Test
Instance Method Details
#call ⇒ Object
7 8 9 10 11 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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/conify/test/manifest_test.rb', line 7 def call test 'id key exists' do data.has_key?('id') end test 'id is a string' do data['id'].is_a?(String) end test 'id is not blank' do !data['id'].empty? end test 'api key exists' do data.has_key?('api') end test 'api is a hash' do data['api'].is_a?(Hash) end test 'api contains password' do data['api'].has_key?('password') && data['api']['password'] != '' end test 'api contains sso_salt' do data['api'].has_key?('sso_salt') && data['api']['sso_salt'] != '' end test 'api contains test url' do data['api'].has_key?('test') end test 'api contains production url' do data['api'].has_key?('production') end if data['api']['production'].is_a?(Hash) test 'production url uses SSL' do data['api']['production']['base_url'] =~ /^https:/ end test 'sso url uses SSL' do data['api']['production']['sso_url'] =~ /^https:/ end else test 'production url uses SSL' do data['api']['production'] =~ /^https:/ end end if data['api'].has_key?('config_vars') test 'contains config_vars array' do data['api']['config_vars'].is_a?(Array) end test 'all config vars are uppercase strings' do data['api']['config_vars'].each do |k, v| if k =~ /^[A-Z][0-9A-Z_]+$/ true else error "#{k.inspect} is not a valid ENV key" end end end test 'all config vars are prefixed with the addon id' do data['api']['config_vars'].each do |k| prefix = data['id'].upcase.gsub('-', '_') if k =~ /^#{prefix}_/ true else error "#{k} is not a valid ENV key - must be prefixed with #{prefix}_" end end end end end |