fog-core 2.1.0 → 2.4.0

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.
Files changed (78) hide show
  1. checksums.yaml +5 -5
  2. data/.github/dependabot.yml +12 -0
  3. data/.github/workflows/ruby.yml +18 -0
  4. data/.github/workflows/stale.yml +9 -0
  5. data/.rubocop.yml +16 -12
  6. data/.rubocop_todo.yml +724 -0
  7. data/CONTRIBUTING.md +5 -1
  8. data/Gemfile +1 -1
  9. data/README.md +1 -1
  10. data/Rakefile +2 -14
  11. data/changelog.md +224 -141
  12. data/fog-core.gemspec +11 -8
  13. data/lib/fog/account.rb +0 -16
  14. data/lib/fog/billing.rb +0 -11
  15. data/lib/fog/compute/models/server.rb +7 -3
  16. data/lib/fog/compute.rb +2 -24
  17. data/lib/fog/core/association.rb +1 -0
  18. data/lib/fog/core/attributes/default.rb +7 -0
  19. data/lib/fog/core/attributes.rb +42 -5
  20. data/lib/fog/core/cache.rb +58 -55
  21. data/lib/fog/core/collection.rb +9 -3
  22. data/lib/fog/core/connection.rb +4 -6
  23. data/lib/fog/core/current_machine.rb +1 -1
  24. data/lib/fog/core/errors.rb +1 -1
  25. data/lib/fog/core/logger.rb +5 -2
  26. data/lib/fog/core/mock.rb +6 -1
  27. data/lib/fog/core/model.rb +34 -5
  28. data/lib/fog/core/provider.rb +37 -4
  29. data/lib/fog/core/scp.rb +16 -11
  30. data/lib/fog/core/service.rb +4 -4
  31. data/lib/fog/core/services_mixin.rb +62 -10
  32. data/lib/fog/core/ssh.rb +49 -25
  33. data/lib/fog/core/stringify_keys.rb +0 -2
  34. data/lib/fog/core/time.rb +2 -2
  35. data/lib/fog/core/uuid.rb +2 -8
  36. data/lib/fog/core/version.rb +1 -1
  37. data/lib/fog/core/wait_for.rb +2 -1
  38. data/lib/fog/core/wait_for_defaults.rb +2 -0
  39. data/lib/fog/core.rb +57 -58
  40. data/lib/fog/dns.rb +0 -11
  41. data/lib/fog/formatador.rb +7 -6
  42. data/lib/fog/monitoring.rb +0 -11
  43. data/lib/fog/network.rb +0 -12
  44. data/lib/fog/schema/data_validator.rb +1 -0
  45. data/lib/fog/storage.rb +15 -29
  46. data/lib/fog/support.rb +0 -12
  47. data/lib/fog/test_helpers/collection_helper.rb +2 -0
  48. data/lib/fog/test_helpers/formats_helper.rb +2 -2
  49. data/lib/fog/test_helpers/helper.rb +3 -3
  50. data/lib/fog/test_helpers/minitest/assertions.rb +1 -1
  51. data/lib/fog/test_helpers/minitest/expectations.rb +1 -1
  52. data/lib/fog/test_helpers/mock_helper.rb +84 -84
  53. data/lib/fog/test_helpers/succeeds_helper.rb +2 -2
  54. data/lib/fog/test_helpers/types_helper.rb +1 -0
  55. data/lib/fog/vpn.rb +0 -12
  56. data/lib/tasks/test_task.rb +2 -2
  57. data/spec/compute/models/server_spec.rb +7 -7
  58. data/spec/compute_spec.rb +33 -33
  59. data/spec/connection_spec.rb +11 -9
  60. data/spec/core/cache_spec.rb +52 -16
  61. data/spec/core/collection_spec.rb +24 -0
  62. data/spec/core/model_spec.rb +36 -3
  63. data/spec/core/stringify_keys_spec.rb +3 -3
  64. data/spec/core/whitelist_keys_spec.rb +2 -2
  65. data/spec/current_machine_spec.rb +2 -2
  66. data/spec/fog_attribute_spec.rb +183 -163
  67. data/spec/formatador_spec.rb +7 -7
  68. data/spec/identity_spec.rb +32 -32
  69. data/spec/mocking_spec.rb +3 -3
  70. data/spec/service_spec.rb +19 -19
  71. data/spec/spec_helper.rb +3 -8
  72. data/spec/storage_spec.rb +33 -35
  73. data/spec/test_helpers/formats_helper_spec.rb +8 -8
  74. data/spec/test_helpers/schema_validator_spec.rb +8 -8
  75. data/spec/utils_spec.rb +6 -6
  76. data/spec/wait_for_spec.rb +2 -2
  77. metadata +57 -59
  78. data/.travis.yml +0 -39
@@ -26,15 +26,15 @@ describe Fog::Formatador do
26
26
  end
27
27
  end
28
28
 
29
- @collection = @collection_class.new(:attr_one => "String", :attr_two => 5)
30
- @collection << @member_class.new(:name => "Member name")
29
+ @collection = @collection_class.new(attr_one: "String", attr_two: 5)
30
+ @collection << @member_class.new(name: "Member name")
31
31
  @expected = <<-EOS.gsub(/^ {6}/, "").chomp!
32
32
  <InspectionGadget
33
- attr_one=\"String\",
33
+ attr_one="String",
34
34
  attr_two=5
35
35
  [
36
36
  <MemberGadget
37
- name=\"Member name\"
37
+ name="Member name"
38
38
  >
39
39
  ]
40
40
  >
@@ -78,18 +78,18 @@ describe Fog::Formatador do
78
78
  self
79
79
  end
80
80
  end
81
- @collection = @collection_class.new(:name => "Name")
81
+ @collection = @collection_class.new(name: "Name")
82
82
  @collection << "this"
83
83
  end
84
84
 
85
85
  it "returns formatted representation" do
86
86
  @expected = <<-EOS.gsub(/^ {6}/, "").chomp!
87
87
  <
88
- name=\"Name\"
88
+ name="Name"
89
89
  >
90
90
  EOS
91
91
 
92
- opts = { :include_nested => false }
92
+ opts = { include_nested: false }
93
93
  Fog::Formatador.format(@collection, opts).must_equal @expected
94
94
  end
95
95
  end
@@ -10,55 +10,51 @@ describe "Fog::Identity" do
10
10
  describe "#new" do
11
11
  module Fog
12
12
  module TheRightWay
13
- extend Provider
14
- service(:identity, "Identity")
15
- end
16
- end
17
-
18
- module Fog
19
- module Identity
20
- class TheRightWay
13
+ class Identity
21
14
  def initialize(_args); end
22
15
  end
23
16
  end
24
17
  end
25
18
 
26
- it "instantiates an instance of Fog::Identity::<Provider> from the :provider keyword arg" do
27
- identity = Fog::Identity.new(:provider => :therightway)
28
- assert_instance_of(Fog::Identity::TheRightWay, identity)
29
- end
30
-
31
19
  module Fog
32
- module Rackspace
20
+ module TheRightWay
33
21
  extend Provider
34
22
  service(:identity, "Identity")
35
23
  end
36
24
  end
37
25
 
26
+ it "instantiates an instance of Fog::Identity::<Provider> from the :provider keyword arg" do
27
+ identity = Fog::Identity.new(provider: :therightway)
28
+ assert_instance_of(Fog::TheRightWay::Identity, identity)
29
+ end
30
+
38
31
  module Fog
39
- module Rackspace
40
- class Identity
32
+ module Identity
33
+ class TheWrongWay
41
34
  def initialize(_args); end
42
35
  end
43
36
  end
44
37
  end
45
38
 
46
- it "instantiates an instance of Fog::<Provider>::Identity from the :provider keyword arg" do
47
- identity = Fog::Identity.new(:provider => :rackspace)
48
- assert_instance_of(Fog::Rackspace::Identity, identity)
49
- end
50
-
51
39
  module Fog
52
- module BothWays
40
+ module TheWrongWay
53
41
  extend Provider
54
42
  service(:identity, "Identity")
55
43
  end
56
44
  end
57
45
 
46
+ it "instantiates an instance of Fog::<Provider>::Identity from the :provider keyword arg" do
47
+ identity = Fog::Identity.new(provider: :thewrongway)
48
+ assert_instance_of(Fog::Identity::TheWrongWay, identity)
49
+ end
50
+
58
51
  module Fog
59
52
  module BothWays
60
53
  class Identity
61
- def initialize(_args); end
54
+ attr_reader :args
55
+ def initialize(args)
56
+ @args = args
57
+ end
62
58
  end
63
59
  end
64
60
  end
@@ -66,29 +62,33 @@ describe "Fog::Identity" do
66
62
  module Fog
67
63
  module Identity
68
64
  class BothWays
69
- attr_reader :args
70
- def initialize(args)
71
- @args = args
72
- end
65
+ def initialize(_args); end
73
66
  end
74
67
  end
75
68
  end
76
69
 
70
+ module Fog
71
+ module BothWays
72
+ extend Provider
73
+ service(:identity, "Identity")
74
+ end
75
+ end
76
+
77
77
  describe "when both Fog::Identity::<Provider> and Fog::<Provider>::Identity exist" do
78
78
  it "prefers Fog::Identity::<Provider>" do
79
- identity = Fog::Identity.new(:provider => :bothways)
80
- assert_instance_of(Fog::Identity::BothWays, identity)
79
+ identity = Fog::Identity.new(provider: :bothways)
80
+ assert_instance_of(Fog::BothWays::Identity, identity)
81
81
  end
82
82
  end
83
83
 
84
84
  it "passes the supplied keyword args less :provider to Fog::Identity::<Provider>#new" do
85
- identity = Fog::Identity.new(:provider => :bothways, :extra => :stuff)
86
- assert_equal({ :extra => :stuff }, identity.args)
85
+ identity = Fog::Identity.new(provider: :bothways, extra: :stuff)
86
+ assert_equal({ extra: :stuff }, identity.args)
87
87
  end
88
88
 
89
89
  it "raises ArgumentError when given a :provider where a Fog::Identity::Provider that does not exist" do
90
90
  assert_raises(ArgumentError) do
91
- Fog::Identity.new(:provider => :wat)
91
+ Fog::Identity.new(provider: :wat)
92
92
  end
93
93
  end
94
94
  end
data/spec/mocking_spec.rb CHANGED
@@ -60,16 +60,16 @@ describe "Fog mocking" do
60
60
  end
61
61
 
62
62
  it "supports explicit request for v4" do
63
- assert IPAddr.new(Fog::Mock.random_ip(:version => :v4)).ipv4?
63
+ assert IPAddr.new(Fog::Mock.random_ip(version: :v4)).ipv4?
64
64
  end
65
65
 
66
66
  it "supports explicit request for v6" do
67
- assert IPAddr.new(Fog::Mock.random_ip(:version => :v6)).ipv6?
67
+ assert IPAddr.new(Fog::Mock.random_ip(version: :v6)).ipv6?
68
68
  end
69
69
 
70
70
  it "raises when supplied an illegal IP version" do
71
71
  assert_raises(ArgumentError) do
72
- IPAddr.new(Fog::Mock.random_ip(:version => :v5)).ipv4?
72
+ IPAddr.new(Fog::Mock.random_ip(version: :v5)).ipv4?
73
73
  end
74
74
  end
75
75
  end
data/spec/service_spec.rb CHANGED
@@ -32,10 +32,10 @@ describe Fog::Service do
32
32
  "User-Agent" => "Generic Fog Client"
33
33
  }
34
34
  params = {
35
- :generic_user => "bob",
36
- :generic_api_key => "1234",
37
- :connection_options => {
38
- :headers => user_agent_hash
35
+ generic_user: "bob",
36
+ generic_api_key: "1234",
37
+ connection_options: {
38
+ headers: user_agent_hash
39
39
  }
40
40
  }
41
41
  service = TestService.new(params)
@@ -54,27 +54,27 @@ describe Fog::Service do
54
54
  end
55
55
 
56
56
  it "removes keys with `nil` values" do
57
- service = TestService.new :generic_api_key => "abc", :generic_user => nil
57
+ service = TestService.new generic_api_key: "abc", generic_user: nil
58
58
  refute_includes service.options.keys, :generic_user
59
59
  end
60
60
 
61
61
  it "converts number String values with to_i" do
62
- service = TestService.new :generic_api_key => "3421"
62
+ service = TestService.new generic_api_key: "3421"
63
63
  assert_equal 3421, service.options[:generic_api_key]
64
64
  end
65
65
 
66
66
  it "converts 'true' String values to TrueClass" do
67
- service = TestService.new :generic_api_key => "true"
67
+ service = TestService.new generic_api_key: "true"
68
68
  assert_equal true, service.options[:generic_api_key]
69
69
  end
70
70
 
71
71
  it "converts 'false' String values to FalseClass" do
72
- service = TestService.new :generic_api_key => "false"
72
+ service = TestService.new generic_api_key: "false"
73
73
  assert_equal false, service.options[:generic_api_key]
74
74
  end
75
75
 
76
76
  it "warns for unrecognised options" do
77
- bad_options = { :generic_api_key => "abc", :bad_option => "bad value" }
77
+ bad_options = { generic_api_key: "abc", bad_option: "bad value" }
78
78
  logger = Minitest::Mock.new
79
79
  logger.expect :warning, nil, ["Unrecognized arguments: bad_option"]
80
80
  Fog.stub_const :Logger, logger do
@@ -87,14 +87,14 @@ describe Fog::Service do
87
87
  describe "when creating and mocking is disabled" do
88
88
  it "returns the real service" do
89
89
  Fog.stub :mocking?, false do
90
- service = TestService.new(:generic_api_key => "abc")
90
+ service = TestService.new(generic_api_key: "abc")
91
91
  service.must_be_instance_of TestService::Real
92
92
  end
93
93
  end
94
94
 
95
95
  it "TestService::Real has TestService::Collections mixed into the mocked service" do
96
96
  Fog.stub :mocking?, false do
97
- service = TestService.new(:generic_api_key => "abc")
97
+ service = TestService.new(generic_api_key: "abc")
98
98
  assert_includes(service.class.ancestors, TestService::Collections)
99
99
  assert_includes(service.class.ancestors, Fog::Service::Collections)
100
100
  refute_includes(service.class.ancestors, ChildOfTestService::Collections)
@@ -114,14 +114,14 @@ describe Fog::Service do
114
114
  describe "when creating and mocking is enabled" do
115
115
  it "returns mocked service" do
116
116
  Fog.stub :mocking?, true do
117
- service = TestService.new(:generic_api_key => "abc")
117
+ service = TestService.new(generic_api_key: "abc")
118
118
  service.must_be_instance_of TestService::Mock
119
119
  end
120
120
  end
121
121
 
122
122
  it "TestService::Mock has TestService::Collections mixed into the mocked service" do
123
123
  Fog.stub :mocking?, true do
124
- service = TestService.new(:generic_api_key => "abc")
124
+ service = TestService.new(generic_api_key: "abc")
125
125
  assert_includes(service.class.ancestors, Fog::Service::Collections)
126
126
  assert_includes(service.class.ancestors, TestService::Collections)
127
127
  refute_includes(service.class.ancestors, ChildOfTestService::Collections)
@@ -141,8 +141,8 @@ describe Fog::Service do
141
141
  describe "when no credentials are provided" do
142
142
  it "uses the global values" do
143
143
  @global_credentials = {
144
- :generic_user => "fog",
145
- :generic_api_key => "fog"
144
+ generic_user: "fog",
145
+ generic_api_key: "fog"
146
146
  }
147
147
 
148
148
  Fog.stub :credentials, @global_credentials do
@@ -155,11 +155,11 @@ describe Fog::Service do
155
155
  describe "when credentials are provided as settings" do
156
156
  it "merges the global values into settings" do
157
157
  @settings = {
158
- :generic_user => "fog"
158
+ generic_user: "fog"
159
159
  }
160
160
  @global_credentials = {
161
- :generic_user => "bob",
162
- :generic_api_key => "fog"
161
+ generic_user: "bob",
162
+ generic_api_key: "fog"
163
163
  }
164
164
 
165
165
  Fog.stub :credentials, @global_credentials do
@@ -172,7 +172,7 @@ describe Fog::Service do
172
172
 
173
173
  describe "when config object can configure the service itself" do
174
174
  it "ignores the global and its values" do
175
- @config = MiniTest::Mock.new
175
+ @config = Minitest::Mock.new
176
176
  def @config.config_service?; true; end
177
177
  def @config.nil?; false; end
178
178
  def @config.==(other); object_id == other.object_id; end
data/spec/spec_helper.rb CHANGED
@@ -1,11 +1,6 @@
1
- if ENV["COVERAGE"]
2
- require "coveralls"
3
- require "simplecov"
4
-
5
- SimpleCov.start do
6
- add_filter "/spec/"
7
- end
8
- end
1
+ # Set home outside of real user
2
+ require "tmpdir"
3
+ ENV["HOME"] = Dir.mktmpdir("foghome")
9
4
 
10
5
  require "minitest/autorun"
11
6
  require "minitest/spec"
data/spec/storage_spec.rb CHANGED
@@ -10,55 +10,50 @@ describe "Fog::Storage" do
10
10
  describe "#new" do
11
11
  module Fog
12
12
  module TheRightWay
13
- extend Provider
14
- service(:storage, "Storage")
15
- end
16
- end
17
-
18
- module Fog
19
- module Storage
20
- class TheRightWay
13
+ class Storage
21
14
  def initialize(_args); end
22
15
  end
23
16
  end
24
17
  end
25
18
 
26
- it "instantiates an instance of Fog::Storage::<Provider> from the :provider keyword arg" do
27
- compute = Fog::Storage.new(:provider => :therightway)
28
- assert_instance_of(Fog::Storage::TheRightWay, compute)
29
- end
30
-
31
19
  module Fog
32
- module TheWrongWay
20
+ module TheRightWay
33
21
  extend Provider
34
22
  service(:storage, "Storage")
35
23
  end
36
24
  end
37
25
 
26
+ it "instantiates an instance of Fog::<Provider>::Storage from the :provider keyword arg" do
27
+ compute = Fog::Storage.new(provider: :therightway)
28
+ assert_instance_of(Fog::TheRightWay::Storage, compute)
29
+ end
30
+
38
31
  module Fog
39
- module TheWrongWay
40
- class Storage
32
+ module Storage
33
+ class TheWrongWay
41
34
  def initialize(_args); end
42
35
  end
43
36
  end
44
- end
45
-
46
- it "instantiates an instance of Fog::<Provider>::Storage from the :provider keyword arg" do
47
- compute = Fog::Storage.new(:provider => :thewrongway)
48
- assert_instance_of(Fog::TheWrongWay::Storage, compute)
49
- end
50
37
 
51
- module Fog
52
- module BothWays
38
+ module TheWrongWay
53
39
  extend Provider
54
40
  service(:storage, "Storage")
55
41
  end
56
42
  end
57
43
 
44
+ it "instantiates an instance of Fog::Storage::<Provider> from the :provider keyword arg" do
45
+ compute = Fog::Storage.new(provider: :thewrongway)
46
+ assert_instance_of(Fog::Storage::TheWrongWay, compute)
47
+ end
48
+
58
49
  module Fog
59
50
  module BothWays
60
51
  class Storage
61
- def initialize(_args); end
52
+ attr_reader :args
53
+
54
+ def initialize(args)
55
+ @args = args
56
+ end
62
57
  end
63
58
  end
64
59
  end
@@ -66,30 +61,33 @@ describe "Fog::Storage" do
66
61
  module Fog
67
62
  module Storage
68
63
  class BothWays
69
- attr_reader :args
70
-
71
- def initialize(args)
72
- @args = args
73
- end
64
+ def initialize(_args); end
74
65
  end
75
66
  end
76
67
  end
77
68
 
69
+ module Fog
70
+ module BothWays
71
+ extend Provider
72
+ service(:storage, "Storage")
73
+ end
74
+ end
75
+
78
76
  describe "when both Fog::Storage::<Provider> and Fog::<Provider>::Storage exist" do
79
77
  it "prefers Fog::Storage::<Provider>" do
80
- compute = Fog::Storage.new(:provider => :bothways)
81
- assert_instance_of(Fog::Storage::BothWays, compute)
78
+ compute = Fog::Storage.new(provider: :bothways)
79
+ assert_instance_of(Fog::BothWays::Storage, compute)
82
80
  end
83
81
  end
84
82
 
85
83
  it "passes the supplied keyword args less :provider to Fog::Storage::<Provider>#new" do
86
- compute = Fog::Storage.new(:provider => :bothways, :extra => :stuff)
87
- assert_equal({ :extra => :stuff }, compute.args)
84
+ compute = Fog::Storage.new(provider: :bothways, extra: :stuff)
85
+ assert_equal({ extra: :stuff }, compute.args)
88
86
  end
89
87
 
90
88
  it "raises ArgumentError when given a :provider where a Fog::Storage::Provider that does not exist" do
91
89
  assert_raises(ArgumentError) do
92
- Fog::Storage.new(:provider => :wat)
90
+ Fog::Storage.new(provider: :wat)
93
91
  end
94
92
  end
95
93
  end
@@ -14,8 +14,8 @@ describe "formats_helper" do
14
14
  let(:shindo) { Shindo::Tests.new }
15
15
 
16
16
  it "comparing welcome data against schema" do
17
- data = { :welcome => "Hello" }
18
- assert shindo.data_matches_schema(:welcome => String) { data }
17
+ data = { welcome: "Hello" }
18
+ assert shindo.data_matches_schema(welcome: String) { data }
19
19
  end
20
20
 
21
21
  describe "#data_matches_schema" do
@@ -28,7 +28,7 @@ describe "formats_helper" do
28
28
  end
29
29
 
30
30
  it "when nested values match schema expectation" do
31
- assert shindo.data_matches_schema("key" => { :nested_key => String }) { { "key" => { :nested_key => "Value" } } }
31
+ assert shindo.data_matches_schema("key" => { nested_key: String }) { { "key" => { nested_key: "Value" } } }
32
32
  end
33
33
 
34
34
  it "when collection of values all match schema expectation" do
@@ -36,11 +36,11 @@ describe "formats_helper" do
36
36
  end
37
37
 
38
38
  it "when collection is empty although schema covers optional members" do
39
- assert shindo.data_matches_schema([{ "key" => String }], :allow_optional_rules => true) { [] }
39
+ assert shindo.data_matches_schema([{ "key" => String }], allow_optional_rules: true) { [] }
40
40
  end
41
41
 
42
42
  it "when additional keys are passed and not strict" do
43
- assert shindo.data_matches_schema({ "key" => String }, { :allow_extra_keys => true }) { { "key" => "Value", :extra => "Bonus" } }
43
+ assert shindo.data_matches_schema({ "key" => String }, { allow_extra_keys: true }) { { "key" => "Value", :extra => "Bonus" } }
44
44
  end
45
45
 
46
46
  it "when value is nil and schema expects NilClass" do
@@ -60,11 +60,11 @@ describe "formats_helper" do
60
60
  end
61
61
 
62
62
  it "when key is missing but value should be NilClass (#1477)" do
63
- assert shindo.data_matches_schema({ "key" => NilClass }, { :allow_optional_rules => true }) { {} }
63
+ assert shindo.data_matches_schema({ "key" => NilClass }, { allow_optional_rules: true }) { {} }
64
64
  end
65
65
 
66
66
  it "when key is missing but value is nullable (#1477)" do
67
- assert shindo.data_matches_schema({ "key" => Fog::Nullable::String }, { :allow_optional_rules => true }) { {} }
67
+ assert shindo.data_matches_schema({ "key" => Fog::Nullable::String }, { allow_optional_rules: true }) { {} }
68
68
  end
69
69
  end
70
70
 
@@ -79,7 +79,7 @@ describe "formats_helper" do
79
79
  end
80
80
 
81
81
  it "when nested values match schema expectation" do
82
- assert shindo.formats("key" => { :nested_key => String }) { { "key" => { :nested_key => "Value" } } }
82
+ assert shindo.formats("key" => { nested_key: String }) { { "key" => { nested_key: "Value" } } }
83
83
  end
84
84
 
85
85
  it "when collection of values all match schema expectation" do
@@ -15,7 +15,7 @@ describe "SchemaValidator" do
15
15
  end
16
16
 
17
17
  it "returns true when nested values match schema expectation" do
18
- assert validator.validate({ "key" => { :nested_key => "Value" } }, { "key" => { :nested_key => String } })
18
+ assert validator.validate({ "key" => { nested_key: "Value" } }, { "key" => { nested_key: String } })
19
19
  end
20
20
 
21
21
  it "returns true when collection of values all match schema expectation" do
@@ -27,7 +27,7 @@ describe "SchemaValidator" do
27
27
  end
28
28
 
29
29
  it "returns true when additional keys are passed and not strict" do
30
- assert validator.validate({ "key" => "Value", :extra => "Bonus" }, { "key" => String }, { :allow_extra_keys => true })
30
+ assert validator.validate({ "key" => "Value", :extra => "Bonus" }, { "key" => String }, { allow_extra_keys: true })
31
31
  end
32
32
 
33
33
  it "returns true when value is nil and schema expects NilClass" do
@@ -47,11 +47,11 @@ describe "SchemaValidator" do
47
47
  end
48
48
 
49
49
  it "returns true when key is missing but value should be NilClass (#1477)" do
50
- assert validator.validate({}, { "key" => NilClass }, { :allow_optional_rules => true })
50
+ assert validator.validate({}, { "key" => NilClass }, { allow_optional_rules: true })
51
51
  end
52
52
 
53
53
  it "returns true when key is missing but value is nullable (#1477)" do
54
- assert validator.validate({}, { "key" => Fog::Nullable::String }, { :allow_optional_rules => true })
54
+ assert validator.validate({}, { "key" => Fog::Nullable::String }, { allow_optional_rules: true })
55
55
  end
56
56
 
57
57
  it "returns false when value does not match schema expectation" do
@@ -59,7 +59,7 @@ describe "SchemaValidator" do
59
59
  end
60
60
 
61
61
  it "returns false when key formats do not match" do
62
- refute validator.validate({ "key" => "Value" }, { :key => String })
62
+ refute validator.validate({ "key" => "Value" }, { key: String })
63
63
  end
64
64
 
65
65
  it "returns false when additional keys are passed and strict" do
@@ -87,15 +87,15 @@ describe "SchemaValidator" do
87
87
  end
88
88
 
89
89
  it "returns false when a hash is expected but another data type is found" do
90
- refute validator.validate({ "key" => { :nested_key => [] } }, { "key" => { :nested_key => {} } })
90
+ refute validator.validate({ "key" => { nested_key: [] } }, { "key" => { nested_key: {} } })
91
91
  end
92
92
 
93
93
  it "returns false when key is missing but value should be NilClass (#1477)" do
94
- refute validator.validate({}, { "key" => NilClass }, { :allow_optional_rules => false })
94
+ refute validator.validate({}, { "key" => NilClass }, { allow_optional_rules: false })
95
95
  end
96
96
 
97
97
  it "returns false when key is missing but value is nullable (#1477)" do
98
- refute validator.validate({}, { "key" => Fog::Nullable::String }, { :allow_optional_rules => false })
98
+ refute validator.validate({}, { "key" => Fog::Nullable::String }, { allow_optional_rules: false })
99
99
  end
100
100
  end
101
101
  end
data/spec/utils_spec.rb CHANGED
@@ -4,25 +4,25 @@ describe Fog::Core::Utils do
4
4
  describe "prepare_service_settings" do
5
5
  it "changes String keys to be Symbols" do
6
6
  settings = { "a" => 3 }
7
- expected = { :a => 3 }
7
+ expected = { a: 3 }
8
8
  assert_equal expected, Fog::Core::Utils.prepare_service_settings(settings)
9
9
  end
10
10
 
11
11
  it "leaves Symbol keys unchanged" do
12
- settings = { :something => 2 }
13
- expected = { :something => 2 }
12
+ settings = { something: 2 }
13
+ expected = { something: 2 }
14
14
  assert_equal expected, Fog::Core::Utils.prepare_service_settings(settings)
15
15
  end
16
16
 
17
17
  it "changes nested String keys to Symbols" do
18
18
  settings = { "connection_options" => { "val" => 5 } }
19
- expected = { :connection_options => { :val => 5 } }
19
+ expected = { connection_options: { val: 5 } }
20
20
  assert_equal expected, Fog::Core::Utils.prepare_service_settings(settings)
21
21
  end
22
22
 
23
23
  it "does not change the :header key or contents" do
24
- settings = { :headers => { "User-Agent" => "my user agent" } }
25
- expected = { :headers => { "User-Agent" => "my user agent" } }
24
+ settings = { headers: { "User-Agent" => "my user agent" } }
25
+ expected = { headers: { "User-Agent" => "my user agent" } }
26
26
  assert_equal expected, Fog::Core::Utils.prepare_service_settings(settings)
27
27
  end
28
28
  end
@@ -2,7 +2,7 @@ require "spec_helper"
2
2
 
3
3
  describe "Fog#wait_for" do
4
4
  it "returns a Hash indicating the wait duration if successful" do
5
- assert_equal({ :duration => 0 }, Fog.wait_for(1) { true })
5
+ assert_equal({ duration: 0 }, Fog.wait_for(1) { true })
6
6
  end
7
7
 
8
8
  it "raises if the wait timeout is exceeded" do
@@ -14,7 +14,7 @@ describe "Fog#wait_for" do
14
14
  it "does not raise if successful when the wait timeout is exceeded" do
15
15
  timeout = 2
16
16
  i = 0
17
- ret = Fog.wait_for(timeout) { i = i + 1; i > 2 }
17
+ ret = Fog.wait_for(timeout) { i += 1; i > 2 }
18
18
  assert_operator(ret[:duration], :>, timeout)
19
19
  end
20
20