schemata-staging 0.0.1.1 → 0.0.3.beta2

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.
@@ -1,7 +1,7 @@
1
- require 'schemata/cloud_controller/cloud_controller'
1
+ require 'schemata/component2/component2'
2
2
  require 'support/helpers'
3
3
 
4
- describe Schemata::CloudController do
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::CloudController::Bar, 10)
40
+ set_current_version(Schemata::Component2::Bar, 10)
41
41
  end
42
42
 
43
43
  after :each do
44
- reset_version(Schemata::CloudController::Bar)
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::CloudController::Bar.decode(@v10_msg)
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::CloudController::Bar.decode(@v11_msg)
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::CloudController::Bar, 11)
62
+ set_current_version(Schemata::Component2::Bar, 11)
63
63
  end
64
64
 
65
65
  after :each do
66
- reset_version(Schemata::CloudController::Bar)
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::CloudController::Bar.decode(@v10_msg)
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::CloudController::Bar.decode(@v11_msg)
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::CloudController::Bar, 10)
86
+ set_current_version(Schemata::Component2::Bar, 10)
87
87
  end
88
88
 
89
89
  after :each do
90
- reset_version(Schemata::CloudController::Bar)
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::CloudController::Bar::V10.new(@v10_hash)
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::CloudController::Bar, 11)
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::CloudController::Bar::V11.new(@v11_hash, aux_data)
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::CloudController::Bar)
136
+ reset_version(Schemata::Component2::Bar)
137
137
  end
138
138
  end
139
139
  end
data/spec/dea_spec.rb ADDED
@@ -0,0 +1,6 @@
1
+ require 'schemata/dea'
2
+ require 'spec_helper'
3
+
4
+ describe Schemata::Dea do
5
+ it_behaves_like "a schemata component"
6
+ end
@@ -0,0 +1,6 @@
1
+ require 'schemata/health_manager'
2
+ require 'spec_helper'
3
+
4
+ describe Schemata::HealthManager do
5
+ it_behaves_like 'a schemata component'
6
+ end
@@ -0,0 +1,6 @@
1
+ require 'schemata/router'
2
+ require 'spec_helper'
3
+
4
+ describe Schemata::Router do
5
+ it_behaves_like "a schemata component"
6
+ end
@@ -0,0 +1 @@
1
+ Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
@@ -0,0 +1,6 @@
1
+ require 'schemata/staging'
2
+ require 'spec_helper'
3
+
4
+ describe Schemata::Staging do
5
+ it_behaves_like "a schemata component"
6
+ end
@@ -0,0 +1,65 @@
1
+ require 'support/helpers'
2
+ require 'schemata/helpers/decamelize'
3
+
4
+ shared_examples "a schemata component" do
5
+
6
+ described_class.constants.select { |x| x != :VERSION }.each do |msg_type|
7
+ describe ".mock_#{Schemata::Helpers.decamelize(msg_type.to_s)}" do
8
+ versions = described_class::const_get(msg_type).constants.select { |x| x =~ /V[0-9]+/ }
9
+ versions.map { |x| x = x.to_s[1..-1].to_i }.each do |version|
10
+ it_behaves_like "a mocking method", version do
11
+ let(:message_type) { described_class::const_get(msg_type) }
12
+ let(:message_type_name) { msg_type.to_s }
13
+ let(:component) { described_class }
14
+ let(:component_name) { component.name.split("::")[1] }
15
+
16
+ let(:mock_method) { "mock_#{Schemata::Helpers.decamelize(msg_type)}"}
17
+ end
18
+ end
19
+ end
20
+
21
+ describe msg_type do
22
+ message_type = described_class::const_get(msg_type)
23
+ it_behaves_like "a message type", message_type do
24
+ let (:message_type) { described_class::const_get(msg_type) }
25
+ let (:message_type_name) { msg_type.to_s }
26
+ let (:component) { described_class }
27
+ let (:component_name) { component.name.split("::")[1] }
28
+
29
+ let (:mock_method) { "mock_#{Schemata::Helpers.decamelize(msg_type)}" }
30
+ end
31
+ end
32
+ end
33
+
34
+ end
35
+
36
+ shared_examples "a mocking method" do |version|
37
+
38
+ context "when current_version is #{version}" do
39
+ before :each do
40
+ set_current_version(message_type, version)
41
+ end
42
+
43
+ after :each do
44
+ reset_version(message_type)
45
+ end
46
+
47
+ it "should return a V#{version} object if called with no argument" do
48
+ msg_obj = component.send(mock_method)
49
+ msg_obj.class.should == message_type::const_get("V#{version}")
50
+ end
51
+
52
+ 1.upto(version) do |i|
53
+ it "should return a V#{i} object if called with input #{i}" do
54
+ msg_obj = component.send(mock_method, i)
55
+ msg_obj.class.should == message_type::const_get("V#{i}")
56
+ end
57
+ end
58
+
59
+ it "should raise an error if called with input > #{version}" do
60
+ expect {
61
+ msg_obj = component.send(mock_method, version + 1)
62
+ }.to raise_error(NameError)
63
+ end
64
+ end
65
+ end
@@ -25,3 +25,58 @@ def greater_version?(version, benchmark)
25
25
  version = version[1..-1].to_i
26
26
  version > benchmark
27
27
  end
28
+
29
+ def num_mandatory_fields(msg_obj)
30
+ optional = msg_obj.class.schema.optional_keys
31
+ mandatory = Set.new(msg_obj.class.schema.schemas.keys)
32
+ diff = mandatory - optional
33
+ return diff.size
34
+ end
35
+
36
+ def all_classes
37
+ all_classes = Set.new([Integer, String, Float, TrueClass, FalseClass, NilClass, Hash, Array])
38
+ end
39
+
40
+ def get_allowed_classes(schema)
41
+ case schema
42
+ when Membrane::Schema::Bool
43
+ return Set.new([TrueClass, FalseClass])
44
+ when Membrane::Schema::Enum
45
+ return Set.new(schema.elem_schemas.map {|x| get_allowed_classes(x)}).flatten
46
+ when Membrane::Schema::Class
47
+ return Set.new([schema.klass])
48
+ when Membrane::Schema::Record
49
+ return Set.new([Hash])
50
+ when Membrane::Schema::List
51
+ return Set.new([Array])
52
+ when Membrane::Schema::Value
53
+ return Set.new([schema.value.class])
54
+ end
55
+ end
56
+
57
+ def get_unallowed_classes(schema)
58
+ allowed_classes = get_allowed_classes(schema)
59
+ all_classes - allowed_classes
60
+ end
61
+
62
+ def default_value(klass)
63
+ # Yes this is silly
64
+ if klass == Integer
65
+ return 0
66
+ elsif klass == String
67
+ return "foo"
68
+ elsif klass == Float
69
+ return 3.14
70
+ elsif klass == TrueClass
71
+ return true
72
+ elsif klass == FalseClass
73
+ return false
74
+ elsif klass == NilClass
75
+ return nil
76
+ elsif klass == Hash
77
+ return {}
78
+ elsif klass == Array
79
+ return []
80
+ else
81
+ end
82
+ end
@@ -0,0 +1,151 @@
1
+ shared_examples "a message" do |msg|
2
+ version = msg.version
3
+
4
+ before :each do
5
+ set_current_version(message_type, version)
6
+ end
7
+
8
+ after :each do
9
+ reset_version(message_type)
10
+ end
11
+
12
+ describe "#new" do
13
+ it "should create a #{msg} object with an incomplete hash" do
14
+ mock_hash = component.send(mock_method, 1).contents
15
+ first_key = mock_hash.keys[0]
16
+ first_value = mock_hash[first_key]
17
+
18
+ msg_obj = message.new({first_key => first_value})
19
+ msg_obj.class.should == message
20
+ msg_obj.send(first_key).should == first_value
21
+ end
22
+
23
+ it "should raise an error if the hash contains incorrect types" do
24
+ mock_hash = component.send(mock_method, 1).contents
25
+ first_key = mock_hash.keys[0]
26
+ first_value = mock_hash[first_key]
27
+
28
+ schema = message.schema.schemas[first_key]
29
+ unallowed_classes = get_unallowed_classes(schema)
30
+ bad_value = default_value(unallowed_classes.to_a[0])
31
+
32
+ expect {
33
+ msg_obj = message.new({first_key => bad_value})
34
+ }.to raise_error(Schemata::UpdateAttributeError)
35
+ end
36
+
37
+ it "should stringify keys when they are symbols" do
38
+ mock_hash = component.send(mock_method, 1).contents
39
+ first_key = mock_hash.keys[0]
40
+ first_value = mock_hash[first_key]
41
+
42
+ input_hash = {
43
+ first_key.to_sym => first_value
44
+ }
45
+ msg_obj = message.new(input_hash)
46
+ msg_obj.send(first_key).should_not be_nil
47
+ end
48
+ end
49
+
50
+ describe "#encode" do
51
+ if version == 1
52
+ it "should return a Schemata-encoded json string, with a V1 hash also in the raw payload" do
53
+ msg_obj = component.send(mock_method, 1)
54
+ json = msg_obj.encode
55
+ json_hash = Yajl::Parser.parse(json)
56
+
57
+ json_hash.should have_key "V1"
58
+ json_hash.should have_key "min_version"
59
+
60
+ data = Schemata::Helpers.deep_copy(json_hash["V1"])
61
+
62
+ json_hash.delete("V1")
63
+ json_hash.delete("min_version")
64
+
65
+ json_hash.should == data
66
+ end
67
+ else
68
+ it "should return a Schemata-encoded json string, with no raw payload" do
69
+ msg_obj = component.send(mock_method, version)
70
+ json = msg_obj.encode
71
+ json_hash = Yajl::Parser.parse(json)
72
+
73
+ 1.upto(version) do |i|
74
+ json_hash.should have_key "V#{i}"
75
+ end
76
+ json_hash.should have_key "min_version"
77
+
78
+ data = Schemata::Helpers.deep_copy(json_hash["V#{version}"])
79
+ 1.upto(version) do |i|
80
+ json_hash.delete("V#{i}")
81
+ end
82
+ json_hash.delete("min_version")
83
+
84
+ json_hash.should be_empty
85
+ end
86
+ end
87
+ end
88
+
89
+ msg.schema.schemas.keys.each do |attr|
90
+ describe "##{attr}" do
91
+ it "should return the attribute if it was specified at instantiation" do
92
+ mock_value = component.send(mock_method, version).contents[attr]
93
+ msg_obj = message.new({ attr => mock_value })
94
+ msg_obj.send(attr).should == mock_value
95
+ end
96
+
97
+ it "should return the attribute if it was set with an attr writer" do
98
+ mock_value = component.send(mock_method, version).contents[attr]
99
+ msg_obj = message.new
100
+ msg_obj.send("#{attr}=", mock_value)
101
+ msg_obj.send(attr).should == mock_value
102
+ end
103
+
104
+ it "should return nil if the attribute was never set" do
105
+ msg_obj = message.new
106
+ msg_obj.send(attr).should be_nil
107
+ end
108
+
109
+ if msg.schema.optional_keys.include? attr
110
+ context "the attribute is optional" do
111
+ it "should allow nil values during instantiation" do
112
+ mock_value = component.send(mock_method, version).contents[attr]
113
+ hash = { attr => mock_value }
114
+ msg_obj = message.new(hash)
115
+ end
116
+
117
+ it "should be able to set the attribute to nil" do
118
+ msg_obj = message.new
119
+ msg_obj.send("#{attr}=", nil)
120
+ end
121
+ end
122
+ end
123
+ end
124
+
125
+ describe "##{attr}=" do
126
+ it "should change the attribute and return the new value" do
127
+ mock_value = component.send(mock_method, version).contents[attr]
128
+ msg_obj = message.new({ attr => mock_value })
129
+ ret = (msg_obj.send("#{attr}=", mock_value))
130
+ msg_obj.send(attr).should == mock_value
131
+ ret.should == mock_value
132
+ end
133
+
134
+ unless msg.schema.schemas[attr].kind_of? Membrane::Schema::Any
135
+ it "should raise an error if the wrong type is written" do
136
+ mock_value = component.send(mock_method, version).contents[attr]
137
+
138
+ schema = message.schema.schemas[attr]
139
+ unallowed_classes = get_unallowed_classes(schema)
140
+ bad_value = default_value(unallowed_classes.to_a[0])
141
+
142
+ msg_obj = message.new
143
+
144
+ expect {
145
+ msg_obj.send("#{attr}=", bad_value)
146
+ }.to raise_error(Schemata::UpdateAttributeError)
147
+ end
148
+ end
149
+ end
150
+ end
151
+ end
@@ -0,0 +1,175 @@
1
+ shared_examples "a message type" do |msg_type|
2
+
3
+ versions = msg_type.constants.select {|x| x =~ /V[0-9]+/ }
4
+ .map {|x| x.to_s[1..-1].to_i}
5
+
6
+ describe ".decode" do
7
+ context "when the current version is 1" do
8
+ before :each do
9
+ set_current_version(message_type, 1)
10
+ end
11
+
12
+ after :each do
13
+ reset_version(message_type)
14
+ end
15
+
16
+ it "should return a V1 object given a flat hash" do
17
+ data = component.send(mock_method, 1).contents
18
+ json = Yajl::Encoder.encode(data)
19
+ msg_obj = message_type.decode(json)
20
+ msg_obj.class.should == message_type::V1
21
+
22
+ message_type::V1.schema.schemas.keys do |key|
23
+ msg_obj.send(key).should == data[key]
24
+ end
25
+ end
26
+
27
+ it "should return a V1 object given a V1-encoded json" do
28
+ data = component.send(mock_method, 1).contents
29
+
30
+ msg_hash = {"V1" => data, "min_version" => 1}
31
+ json = Yajl::Encoder.encode(msg_hash)
32
+
33
+ msg_obj = message_type.decode(json)
34
+ msg_obj.class.should == message_type::V1
35
+
36
+ message_type::V1.schema.schemas.keys do |key|
37
+ msg_obj.send(key).should == data[key]
38
+ end
39
+ end
40
+
41
+ it "should return a V1 object given a mixed (V1-encoded + flat hash) json" do
42
+ data = component.send(mock_method, 1).contents
43
+ msg_hash = {
44
+ "V1" => data,
45
+ "min_version" => 1
46
+ }.merge(Schemata::Helpers.deep_copy(data))
47
+ json = Yajl::Encoder.encode(msg_hash)
48
+
49
+ msg_obj = message_type.decode(json)
50
+ msg_obj.class.should == message_type::V1
51
+
52
+ message_type::V1.schema.schemas.keys do |key|
53
+ msg_obj.send(key).should == data[key]
54
+ end
55
+ end
56
+
57
+ it "should return a V1 object when given a V2-encoded json" do
58
+ v2_hash = component.send(mock_method, 1).contents
59
+ msg_hash = {
60
+ "V2" => v2_hash,
61
+ "V1" => {},
62
+ "min_version" => 1
63
+ }
64
+ json = Yajl::Encoder.encode(msg_hash)
65
+
66
+ msg_obj = message_type.decode(json)
67
+ msg_obj.class.should == message_type::V1
68
+
69
+ message_type::V1.schema.schemas.keys do |key|
70
+ msg_obj.send(key).should == data[key]
71
+ end
72
+ end
73
+
74
+ it "should raise an error if the input does not have the valid Schemata \
75
+ structure or a complete flash hash" do
76
+ mock_obj = component.send(mock_method, 1)
77
+ mock_hash = mock_obj.contents
78
+
79
+ if num_mandatory_fields(mock_obj) > 1
80
+ first_key = mock_hash.keys[0]
81
+ first_value = mock_hash[first_key]
82
+
83
+ json = Yajl::Encoder.encode({ first_key => first_value})
84
+ else
85
+ json = Yajl::Encoder.encode({})
86
+ end
87
+ expect {
88
+ msg_obj = message_type.decode(json)
89
+ }.to raise_error(Schemata::DecodeError)
90
+ end
91
+ end
92
+
93
+ if versions.include?(2)
94
+ context "when the current version is 2" do
95
+ before :each do
96
+ set_current_version(message_type, 2)
97
+ end
98
+
99
+ after :each do
100
+ reset_version(message_type)
101
+ end
102
+
103
+ it "should raise an error given a flat hash" do
104
+ data = component.send(mock_method, 2).contents
105
+ json = Yajl::Encoder.encode(data)
106
+ expect {
107
+ msg_obj = message_type.decode(json)
108
+ }.to raise_error(Schemata::DecodeError)
109
+ end
110
+
111
+ it "should return a V2 object a given a mixed (flat hash + V1-encoded) json" do
112
+ msg_hash = component.send(mock_method, 2).contents
113
+ v1_hash = Schemata::Helpers.deep_copy(msg_hash)
114
+ msg_hash["V1"] = v1_hash
115
+ msg_hash["min_version"] = 1
116
+
117
+ json = Yajl::Encoder.encode(msg_hash)
118
+
119
+ msg_obj = message_type.decode(json)
120
+ msg_obj.class.should == message_type::V2
121
+
122
+ message_type::V2.schema.schemas.keys.each do |key|
123
+ msg_obj.send(key).should == v1_hash[key]
124
+ end
125
+ end
126
+
127
+ it "should return a V2 object given a V1-encoded json" do
128
+ v1_hash = component.send(mock_method, 1).contents
129
+ msg_hash = {"V1" => v1_hash, 'min_version' => 1}
130
+
131
+ json = Yajl::Encoder.encode(msg_hash)
132
+
133
+ msg_obj = message_type.decode(json)
134
+ msg_obj.class.should == message_type::V2
135
+
136
+ message_type::V2.schema.schemas.keys.each do |key|
137
+ msg_obj.send(key).should == v1_hash[key]
138
+ end
139
+ end
140
+
141
+ it "should return a V2 object given a V2-encoded object" do
142
+ data = component.send(mock_method, 2).contents
143
+ v2_hash = Schemata::Helpers.deep_copy(data)
144
+ msg_hash = {"V2" => v2_hash, "V1" => {}, "min_version" => 1}
145
+
146
+ json = Yajl::Encoder.encode(msg_hash)
147
+
148
+ msg_obj = message_type.decode(json)
149
+ msg_obj.class.should == message_type::V2
150
+
151
+ message_type::V2.schema.schemas.keys.each do |key|
152
+ msg_obj.send(key).should == data[key]
153
+ end
154
+ end
155
+ end
156
+ end
157
+ end
158
+
159
+ # The first two versions have exceptional behavior, starting from
160
+ # version 3, all versions should have the same unit tests
161
+ versions.select { |x| x > 2 }.each do |version|
162
+
163
+ end
164
+
165
+ # Test message version types
166
+ versions.each do |version|
167
+ msg = msg_type::const_get("V#{version}")
168
+ describe "V#{version}" do
169
+ it_behaves_like "a message", msg do
170
+ let (:message) { message_type::const_get("V#{version}") }
171
+ let (:message_name) { message.to_s }
172
+ end
173
+ end
174
+ end
175
+ end
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schemata-staging
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.1
5
- prerelease:
4
+ version: 0.0.3.beta2
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - dsabeti
@@ -99,24 +99,36 @@ executables: []
99
99
  extensions: []
100
100
  extra_rdoc_files: []
101
101
  files:
102
- - lib/schemata/staging/message/message_v1.rb
103
- - lib/schemata/staging/version.rb
104
- - lib/schemata/staging/message.rb
102
+ - lib/schemata/common/componentbase.rb
103
+ - lib/schemata/common/error.rb
104
+ - lib/schemata/common/msgbase.rb
105
105
  - lib/schemata/common/msgtypebase.rb
106
106
  - lib/schemata/common/parsed_msg.rb
107
- - lib/schemata/common/msgbase.rb
108
- - lib/schemata/common/error.rb
109
- - lib/schemata/staging.rb
107
+ - lib/schemata/helpers/decamelize.rb
110
108
  - lib/schemata/helpers/hash_copy.rb
111
- - spec/cloud_controller/cc_bar_spec.rb
109
+ - lib/schemata/helpers/stringify.rb
110
+ - lib/schemata/staging/message/message_v1.rb
111
+ - lib/schemata/staging/message/message_v2.rb
112
+ - lib/schemata/staging/message.rb
113
+ - lib/schemata/staging/version.rb
114
+ - lib/schemata/staging.rb
115
+ - spec/cloud_controller_spec.rb
112
116
  - spec/common/helpers_spec.rb
113
117
  - spec/common/parsed_msg_spec.rb
114
118
  - spec/component/aux_data_spec.rb
115
119
  - spec/component/component_bar_spec.rb
116
120
  - spec/component/component_foo_spec.rb
117
121
  - spec/component/foo_spec.rb
118
- - spec/staging/staging_message_spec.rb
122
+ - spec/component2/component2_bar_spec.rb
123
+ - spec/dea_spec.rb
124
+ - spec/health_manager_spec.rb
125
+ - spec/router_spec.rb
126
+ - spec/spec_helper.rb
127
+ - spec/staging_spec.rb
128
+ - spec/support/component_helpers.rb
119
129
  - spec/support/helpers.rb
130
+ - spec/support/message_helpers.rb
131
+ - spec/support/message_type_helpers.rb
120
132
  homepage: http://www.cloudfoundry.org
121
133
  licenses: []
122
134
  post_install_message:
@@ -132,9 +144,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
132
144
  required_rubygems_version: !ruby/object:Gem::Requirement
133
145
  none: false
134
146
  requirements:
135
- - - ! '>='
147
+ - - ! '>'
136
148
  - !ruby/object:Gem::Version
137
- version: '0'
149
+ version: 1.3.1
138
150
  requirements: []
139
151
  rubyforge_project:
140
152
  rubygems_version: 1.8.24
@@ -142,12 +154,20 @@ signing_key:
142
154
  specification_version: 3
143
155
  summary: validation for cloundfoundry stager messages
144
156
  test_files:
145
- - spec/cloud_controller/cc_bar_spec.rb
157
+ - spec/cloud_controller_spec.rb
146
158
  - spec/common/helpers_spec.rb
147
159
  - spec/common/parsed_msg_spec.rb
148
160
  - spec/component/aux_data_spec.rb
149
161
  - spec/component/component_bar_spec.rb
150
162
  - spec/component/component_foo_spec.rb
151
163
  - spec/component/foo_spec.rb
152
- - spec/staging/staging_message_spec.rb
164
+ - spec/component2/component2_bar_spec.rb
165
+ - spec/dea_spec.rb
166
+ - spec/health_manager_spec.rb
167
+ - spec/router_spec.rb
168
+ - spec/spec_helper.rb
169
+ - spec/staging_spec.rb
170
+ - spec/support/component_helpers.rb
153
171
  - spec/support/helpers.rb
172
+ - spec/support/message_helpers.rb
173
+ - spec/support/message_type_helpers.rb