atlantic_net 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/atlantic_net.gemspec +1 -1
- data/lib/atlantic_net.rb +6 -1
- data/spec/atlantic_net_spec.rb +80 -29
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1bb1ba38e0443eb7a881aa71d242200c1ab2ca96
|
4
|
+
data.tar.gz: 2939633312aae05b31ec72a159a6abd40f547c10
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 492053e8f827e1a7f762f5eb9541a7f8ce1d41b7470f92faac17de9f4a1f22fdd2e0a108dc6b2b84dec45743aff8baadd2b39ff15bec5b348f3c7f8ef71f35ab
|
7
|
+
data.tar.gz: 280d48b1c4ea75555ea66ce0b9efc2e320f68d4d495f6f7dce36936cd944529d99cf43835388047920fc8e8ac38c00f7eefa1fea875a6fe7c76d8c2b380d6fd5
|
data/atlantic_net.gemspec
CHANGED
data/lib/atlantic_net.rb
CHANGED
@@ -101,7 +101,12 @@ class AtlanticNet
|
|
101
101
|
def reboot_instance(instance_id, options={})
|
102
102
|
reboot_type = options[:reboot_type] || "soft"
|
103
103
|
response = api_call('reboot-instance', {instanceid: instance_id, reboottype: reboot_type})
|
104
|
-
response["reboot-instanceresponse"]
|
104
|
+
reboot_response = response["reboot-instanceresponse"]
|
105
|
+
if reboot_response.has_key? "return"
|
106
|
+
response["reboot-instanceresponse"]["return"]
|
107
|
+
else
|
108
|
+
response["reboot-instanceresponse"]["instancesSet"]["item"]
|
109
|
+
end
|
105
110
|
end
|
106
111
|
|
107
112
|
# Describe a specific cloud server.
|
data/spec/atlantic_net_spec.rb
CHANGED
@@ -142,18 +142,6 @@ describe AtlanticNet do
|
|
142
142
|
|
143
143
|
describe '#reboot_instance' do
|
144
144
|
let(:instance_id) { "234" }
|
145
|
-
let(:sample_api_response) {
|
146
|
-
{
|
147
|
-
"Timestamp" => 1440171938,
|
148
|
-
"reboot-instanceresponse" => {
|
149
|
-
"requestid" => "6723430f-c416-46de-a03d-2d2ea38d3af7",
|
150
|
-
"return" => {
|
151
|
-
"Message" => "Successfully queued for reboot",
|
152
|
-
"value" => "true"
|
153
|
-
}
|
154
|
-
}
|
155
|
-
}
|
156
|
-
}
|
157
145
|
let(:expected_return) {
|
158
146
|
{
|
159
147
|
"Message" => "Successfully queued for reboot",
|
@@ -161,27 +149,90 @@ describe AtlanticNet do
|
|
161
149
|
}
|
162
150
|
}
|
163
151
|
|
164
|
-
context "
|
165
|
-
let(:
|
152
|
+
context "standard documented response" do
|
153
|
+
let(:sample_api_response) {
|
154
|
+
{
|
155
|
+
"Timestamp" => 1440171938,
|
156
|
+
"reboot-instanceresponse" => {
|
157
|
+
"requestid" => "6723430f-c416-46de-a03d-2d2ea38d3af7",
|
158
|
+
"return" => {
|
159
|
+
"Message" => "Successfully queued for reboot",
|
160
|
+
"value" => "true"
|
161
|
+
}
|
162
|
+
}
|
163
|
+
}
|
164
|
+
}
|
165
|
+
|
166
|
+
context "default options" do
|
167
|
+
let(:reboot_type) { "soft" }
|
168
|
+
|
169
|
+
it 'calls api_call with reboot-instance and instance_id' do
|
170
|
+
expect(subject).to receive(:api_call)
|
171
|
+
.with("reboot-instance", {instanceid: instance_id, reboottype: reboot_type})
|
172
|
+
.and_return(sample_api_response)
|
173
|
+
result = subject.reboot_instance(instance_id)
|
174
|
+
expect(result).to eq expected_return
|
175
|
+
end
|
176
|
+
end
|
166
177
|
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
178
|
+
context "reboot_type override" do
|
179
|
+
let(:reboot_type) { "hard" }
|
180
|
+
|
181
|
+
it 'calls api_call with reboot-instance, instance_id and reboot_type' do
|
182
|
+
expect(subject).to receive(:api_call)
|
183
|
+
.with("reboot-instance", {instanceid: instance_id, reboottype: reboot_type})
|
184
|
+
.and_return(sample_api_response)
|
185
|
+
result = subject.reboot_instance(instance_id, reboot_type: reboot_type)
|
186
|
+
expect(result).to eq expected_return
|
187
|
+
end
|
173
188
|
end
|
174
189
|
end
|
175
|
-
|
176
|
-
context "reboot_type override" do
|
177
|
-
let(:reboot_type) { "hard" }
|
178
190
|
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
191
|
+
context "actual response" do
|
192
|
+
let(:sample_api_response) {
|
193
|
+
{
|
194
|
+
"reboot-instanceresponse" => {
|
195
|
+
"requestid" => "6723430f-c416-46de-a03d-2d2ea38d3af7",
|
196
|
+
"instancesSet" => {
|
197
|
+
"item" => {
|
198
|
+
"value" => "true",
|
199
|
+
"Message" => "Successfully queued for reboot",
|
200
|
+
"InstanceId" => "234"
|
201
|
+
}
|
202
|
+
}
|
203
|
+
}, "Timestamp" => 1440171938
|
204
|
+
}
|
205
|
+
}
|
206
|
+
let(:expected_return) {
|
207
|
+
{
|
208
|
+
"Message" => "Successfully queued for reboot",
|
209
|
+
"value" => "true",
|
210
|
+
"InstanceId" => "234"
|
211
|
+
}
|
212
|
+
}
|
213
|
+
|
214
|
+
context "default options" do
|
215
|
+
let(:reboot_type) { "soft" }
|
216
|
+
|
217
|
+
it 'calls api_call with reboot-instance and instance_id' do
|
218
|
+
expect(subject).to receive(:api_call)
|
219
|
+
.with("reboot-instance", {instanceid: instance_id, reboottype: reboot_type})
|
220
|
+
.and_return(sample_api_response)
|
221
|
+
result = subject.reboot_instance(instance_id)
|
222
|
+
expect(result).to eq expected_return
|
223
|
+
end
|
224
|
+
end
|
225
|
+
|
226
|
+
context "reboot_type override" do
|
227
|
+
let(:reboot_type) { "hard" }
|
228
|
+
|
229
|
+
it 'calls api_call with reboot-instance, instance_id and reboot_type' do
|
230
|
+
expect(subject).to receive(:api_call)
|
231
|
+
.with("reboot-instance", {instanceid: instance_id, reboottype: reboot_type})
|
232
|
+
.and_return(sample_api_response)
|
233
|
+
result = subject.reboot_instance(instance_id, reboot_type: reboot_type)
|
234
|
+
expect(result).to eq expected_return
|
235
|
+
end
|
185
236
|
end
|
186
237
|
end
|
187
238
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atlantic_net
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jamie Starke
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -201,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
201
|
version: '0'
|
202
202
|
requirements: []
|
203
203
|
rubyforge_project:
|
204
|
-
rubygems_version: 2.
|
204
|
+
rubygems_version: 2.4.6
|
205
205
|
signing_key:
|
206
206
|
specification_version: 4
|
207
207
|
summary: A Ruby wrapper of the Atlantic.net API
|