schemata-dea 0.0.1.beta13 → 0.0.1.beta14
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.
- data/lib/schemata/common/msgbase.rb +1 -0
- data/lib/schemata/dea/version.rb +1 -1
- data/spec/cloud_controller/cloud_controller_spec.rb +6 -0
- data/spec/cloud_controller/droplet_updated_message_spec.rb +10 -0
- data/spec/cloud_controller/hm_start_request_spec.rb +11 -0
- data/spec/cloud_controller/hm_stop_request_spec.rb +12 -0
- data/spec/{cloud_controller/cc_bar_spec.rb → component2/component2_bar_spec.rb} +16 -16
- data/spec/health_manager/health_manager_spec.rb +6 -0
- data/spec/health_manager/health_request_spec.rb +12 -0
- data/spec/health_manager/health_response_spec.rb +12 -0
- data/spec/health_manager/status_crashed_response_spec.rb +12 -0
- data/spec/health_manager/status_flapping_response_spec.rb +12 -0
- data/spec/health_manager/status_request_spec.rb +12 -0
- data/spec/support/helpers.rb +6 -1
- data/spec/support/message_helpers.rb +12 -0
- metadata +23 -3
data/lib/schemata/dea/version.rb
CHANGED
@@ -0,0 +1,10 @@
|
|
1
|
+
require 'schemata/cloud_controller'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::CloudController::DropletUpdatedMessage do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
describe Schemata::CloudController::DropletUpdatedMessage::V1 do
|
9
|
+
it_behaves_like "a message"
|
10
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require "schemata/cloud_controller"
|
2
|
+
|
3
|
+
describe Schemata::CloudController::HmStartRequest do
|
4
|
+
it_behaves_like "a message type"
|
5
|
+
end
|
6
|
+
|
7
|
+
Schemata::CloudController::HmStartRequest.versions.each do |v|
|
8
|
+
describe Schemata::CloudController::HmStartRequest::const_get("V#{v}") do
|
9
|
+
it_behaves_like "a message"
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/cloud_controller'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::CloudController::HmStopRequest do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::CloudController::HmStopRequest.versions.each do |v|
|
9
|
+
describe Schemata::CloudController::HmStopRequest::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
|
-
require 'schemata/
|
1
|
+
require 'schemata/component2/component2'
|
2
2
|
require 'support/helpers'
|
3
3
|
|
4
|
-
describe Schemata::
|
4
|
+
describe Schemata::Component2 do
|
5
5
|
before :each do
|
6
6
|
@v10_msg = '{
|
7
7
|
"min_version": 10,
|
@@ -37,21 +37,21 @@ describe Schemata::CloudController do
|
|
37
37
|
describe "#decode" do
|
38
38
|
describe "(current version is 10)" do
|
39
39
|
before :each do
|
40
|
-
set_current_version(Schemata::
|
40
|
+
set_current_version(Schemata::Component2::Bar, 10)
|
41
41
|
end
|
42
42
|
|
43
43
|
after :each do
|
44
|
-
reset_version(Schemata::
|
44
|
+
reset_version(Schemata::Component2::Bar)
|
45
45
|
end
|
46
46
|
|
47
47
|
it "should take a v10 msg and create a v10 obj" do
|
48
|
-
msg_obj = Schemata::
|
48
|
+
msg_obj = Schemata::Component2::Bar.decode(@v10_msg)
|
49
49
|
msg_obj.bar1.should == "first"
|
50
50
|
msg_obj.bar2.should == "second"
|
51
51
|
end
|
52
52
|
|
53
53
|
it "should take a v11 msg and create a v10 obj" do
|
54
|
-
msg_obj = Schemata::
|
54
|
+
msg_obj = Schemata::Component2::Bar.decode(@v11_msg)
|
55
55
|
msg_obj.bar1.should == "1"
|
56
56
|
msg_obj.bar2.should == "second"
|
57
57
|
end
|
@@ -59,21 +59,21 @@ describe Schemata::CloudController do
|
|
59
59
|
|
60
60
|
describe "(current version is 11)" do
|
61
61
|
before :each do
|
62
|
-
set_current_version(Schemata::
|
62
|
+
set_current_version(Schemata::Component2::Bar, 11)
|
63
63
|
end
|
64
64
|
|
65
65
|
after :each do
|
66
|
-
reset_version(Schemata::
|
66
|
+
reset_version(Schemata::Component2::Bar)
|
67
67
|
end
|
68
68
|
|
69
69
|
it "should take a v10 msg and create a v11 obj" do
|
70
|
-
msg_obj = Schemata::
|
70
|
+
msg_obj = Schemata::Component2::Bar.decode(@v10_msg)
|
71
71
|
msg_obj.bar1.should == 5
|
72
72
|
msg_obj.bar3.should == "third"
|
73
73
|
end
|
74
74
|
|
75
75
|
it "should take a v11 msg and create a v11 obj" do
|
76
|
-
msg_obj = Schemata::
|
76
|
+
msg_obj = Schemata::Component2::Bar.decode(@v11_msg)
|
77
77
|
msg_obj.bar1.should == 1
|
78
78
|
msg_obj.bar3.should == "third"
|
79
79
|
end
|
@@ -83,15 +83,15 @@ describe Schemata::CloudController do
|
|
83
83
|
describe "#encode" do
|
84
84
|
describe "(current version is 10)" do
|
85
85
|
before :each do
|
86
|
-
set_current_version(Schemata::
|
86
|
+
set_current_version(Schemata::Component2::Bar, 10)
|
87
87
|
end
|
88
88
|
|
89
89
|
after :each do
|
90
|
-
reset_version(Schemata::
|
90
|
+
reset_version(Schemata::Component2::Bar)
|
91
91
|
end
|
92
92
|
|
93
93
|
it "should take a v10 obj and encode a json msg" do
|
94
|
-
v10_obj = Schemata::
|
94
|
+
v10_obj = Schemata::Component2::Bar::V10.new(@v10_hash)
|
95
95
|
json_msg = v10_obj.encode
|
96
96
|
returned_hash = Yajl::Parser.parse(json_msg)
|
97
97
|
|
@@ -108,12 +108,12 @@ describe Schemata::CloudController do
|
|
108
108
|
|
109
109
|
describe "(current version is 11)" do
|
110
110
|
before :each do
|
111
|
-
set_current_version(Schemata::
|
111
|
+
set_current_version(Schemata::Component2::Bar, 11)
|
112
112
|
end
|
113
113
|
|
114
114
|
it "should take a v11 obj and encode a json msg" do
|
115
115
|
aux_data = {"bar2" => "second" }
|
116
|
-
v11_obj = Schemata::
|
116
|
+
v11_obj = Schemata::Component2::Bar::V11.new(@v11_hash, aux_data)
|
117
117
|
json_msg = v11_obj.encode
|
118
118
|
returned_hash = Yajl::Parser.parse(json_msg)
|
119
119
|
|
@@ -133,7 +133,7 @@ describe Schemata::CloudController do
|
|
133
133
|
end
|
134
134
|
|
135
135
|
after :each do
|
136
|
-
reset_version(Schemata::
|
136
|
+
reset_version(Schemata::Component2::Bar)
|
137
137
|
end
|
138
138
|
end
|
139
139
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/health_manager'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::HealthManager::HealthRequest do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::HealthManager::HealthRequest.versions.each do |v|
|
9
|
+
describe Schemata::HealthManager::HealthRequest::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/health_manager'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::HealthManager::HealthResponse do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::HealthManager::HealthResponse.versions.each do |v|
|
9
|
+
describe Schemata::HealthManager::HealthResponse::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/health_manager'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::HealthManager::StatusCrashedResponse do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::HealthManager::StatusCrashedResponse.versions.each do |v|
|
9
|
+
describe Schemata::HealthManager::StatusCrashedResponse::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/health_manager'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::HealthManager::StatusFlappingResponse do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::HealthManager::StatusFlappingResponse.versions.each do |v|
|
9
|
+
describe Schemata::HealthManager::StatusFlappingResponse::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'schemata/health_manager'
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Schemata::HealthManager::StatusRequest do
|
5
|
+
it_behaves_like "a message type"
|
6
|
+
end
|
7
|
+
|
8
|
+
Schemata::HealthManager::StatusRequest.versions.each do |v|
|
9
|
+
describe Schemata::HealthManager::StatusRequest::const_get("V#{v}") do
|
10
|
+
it_behaves_like "a message"
|
11
|
+
end
|
12
|
+
end
|
data/spec/support/helpers.rb
CHANGED
@@ -53,6 +53,10 @@ def num_mandatory_fields(msg_obj)
|
|
53
53
|
return diff.size
|
54
54
|
end
|
55
55
|
|
56
|
+
def all_classes
|
57
|
+
all_classes = Set.new([Integer, String, Float, TrueClass, FalseClass, NilClass, Hash, Array])
|
58
|
+
end
|
59
|
+
|
56
60
|
def get_allowed_classes(schema)
|
57
61
|
case schema
|
58
62
|
when Membrane::Schema::Bool
|
@@ -65,11 +69,12 @@ def get_allowed_classes(schema)
|
|
65
69
|
return Set.new([Hash])
|
66
70
|
when Membrane::Schema::List
|
67
71
|
return Set.new([Array])
|
72
|
+
when Membrane::Schema::Value
|
73
|
+
return Set.new([schema.value.class])
|
68
74
|
end
|
69
75
|
end
|
70
76
|
|
71
77
|
def get_unallowed_classes(schema)
|
72
|
-
all_classes = Set.new([Integer, String, Float, TrueClass, FalseClass, NilClass, Hash, Array])
|
73
78
|
allowed_classes = get_allowed_classes(schema)
|
74
79
|
all_classes - allowed_classes
|
75
80
|
end
|
@@ -44,6 +44,18 @@ shared_examples "a message" do
|
|
44
44
|
msg_obj = message.new({first_key => bad_value})
|
45
45
|
}.to raise_error(Schemata::UpdateAttributeError)
|
46
46
|
end
|
47
|
+
|
48
|
+
it "should stringify keys when they are symbols" do
|
49
|
+
mock_hash = component.send(mock_method, 1).contents
|
50
|
+
first_key = mock_hash.keys[0]
|
51
|
+
first_value = mock_hash[first_key]
|
52
|
+
|
53
|
+
input_hash = {
|
54
|
+
first_key.to_sym => first_value
|
55
|
+
}
|
56
|
+
msg_obj = message.new(input_hash)
|
57
|
+
msg_obj.send(first_key).should_not be_nil
|
58
|
+
end
|
47
59
|
end
|
48
60
|
|
49
61
|
describe "#encode" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: schemata-dea
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.
|
4
|
+
version: 0.0.1.beta14
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -147,13 +147,17 @@ files:
|
|
147
147
|
- lib/schemata/common/error.rb
|
148
148
|
- lib/schemata/helpers/stringify.rb
|
149
149
|
- lib/schemata/helpers/hash_copy.rb
|
150
|
-
- spec/cloud_controller/
|
150
|
+
- spec/cloud_controller/cloud_controller_spec.rb
|
151
|
+
- spec/cloud_controller/droplet_updated_message_spec.rb
|
152
|
+
- spec/cloud_controller/hm_start_request_spec.rb
|
153
|
+
- spec/cloud_controller/hm_stop_request_spec.rb
|
151
154
|
- spec/common/helpers_spec.rb
|
152
155
|
- spec/common/parsed_msg_spec.rb
|
153
156
|
- spec/component/aux_data_spec.rb
|
154
157
|
- spec/component/component_bar_spec.rb
|
155
158
|
- spec/component/component_foo_spec.rb
|
156
159
|
- spec/component/foo_spec.rb
|
160
|
+
- spec/component2/component2_bar_spec.rb
|
157
161
|
- spec/dea/advertise_message_spec.rb
|
158
162
|
- spec/dea/dea_spec.rb
|
159
163
|
- spec/dea/dea_status_response_spec.rb
|
@@ -167,6 +171,12 @@ files:
|
|
167
171
|
- spec/dea/start_request_spec.rb
|
168
172
|
- spec/dea/stop_request_spec.rb
|
169
173
|
- spec/dea/update_request_spec.rb
|
174
|
+
- spec/health_manager/health_manager_spec.rb
|
175
|
+
- spec/health_manager/health_request_spec.rb
|
176
|
+
- spec/health_manager/health_response_spec.rb
|
177
|
+
- spec/health_manager/status_crashed_response_spec.rb
|
178
|
+
- spec/health_manager/status_flapping_response_spec.rb
|
179
|
+
- spec/health_manager/status_request_spec.rb
|
170
180
|
- spec/router/register_request_spec.rb
|
171
181
|
- spec/router/router_spec.rb
|
172
182
|
- spec/router/start_message_spec.rb
|
@@ -202,13 +212,17 @@ signing_key:
|
|
202
212
|
specification_version: 3
|
203
213
|
summary: validation for cloundfoundry DEA messages
|
204
214
|
test_files:
|
205
|
-
- spec/cloud_controller/
|
215
|
+
- spec/cloud_controller/cloud_controller_spec.rb
|
216
|
+
- spec/cloud_controller/droplet_updated_message_spec.rb
|
217
|
+
- spec/cloud_controller/hm_start_request_spec.rb
|
218
|
+
- spec/cloud_controller/hm_stop_request_spec.rb
|
206
219
|
- spec/common/helpers_spec.rb
|
207
220
|
- spec/common/parsed_msg_spec.rb
|
208
221
|
- spec/component/aux_data_spec.rb
|
209
222
|
- spec/component/component_bar_spec.rb
|
210
223
|
- spec/component/component_foo_spec.rb
|
211
224
|
- spec/component/foo_spec.rb
|
225
|
+
- spec/component2/component2_bar_spec.rb
|
212
226
|
- spec/dea/advertise_message_spec.rb
|
213
227
|
- spec/dea/dea_spec.rb
|
214
228
|
- spec/dea/dea_status_response_spec.rb
|
@@ -222,6 +236,12 @@ test_files:
|
|
222
236
|
- spec/dea/start_request_spec.rb
|
223
237
|
- spec/dea/stop_request_spec.rb
|
224
238
|
- spec/dea/update_request_spec.rb
|
239
|
+
- spec/health_manager/health_manager_spec.rb
|
240
|
+
- spec/health_manager/health_request_spec.rb
|
241
|
+
- spec/health_manager/health_response_spec.rb
|
242
|
+
- spec/health_manager/status_crashed_response_spec.rb
|
243
|
+
- spec/health_manager/status_flapping_response_spec.rb
|
244
|
+
- spec/health_manager/status_request_spec.rb
|
225
245
|
- spec/router/register_request_spec.rb
|
226
246
|
- spec/router/router_spec.rb
|
227
247
|
- spec/router/start_message_spec.rb
|