Skip to content

Commit 54d6bb5

Browse files
committed
Add route update message spec
1 parent 271eb39 commit 54d6bb5

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

spec/unit/messages/route_update_message_spec.rb

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,34 @@ module VCAP::CloudController
1818
expect(message).to be_valid
1919
end
2020

21+
it 'accepts options params with round-robin load-balancing algorithm' do
22+
message = RouteUpdateMessage.new(params.merge(options: { lb_algo: 'round-robin' }))
23+
expect(message).to be_valid
24+
end
25+
26+
it 'accepts options params with least-connections load-balancing algorithm' do
27+
message = RouteUpdateMessage.new(params.merge(options: { lb_algo: 'least-connections' }))
28+
expect(message).to be_valid
29+
end
30+
2131
it 'does not accept any other params' do
2232
message = RouteUpdateMessage.new(params.merge(unexpected: 'unexpected_value'))
2333
expect(message).not_to be_valid
2434
expect(message.errors.full_messages[0]).to include("Unknown field(s): 'unexpected'")
2535
end
36+
37+
it 'does not accept unknown load-balancing algorithm' do
38+
message = RouteUpdateMessage.new(params.merge(options: { lb_algo: 'cheesecake' }))
39+
expect(message).not_to be_valid
40+
expect(message.errors.full_messages[0]).to include("Options Lb algo 'cheesecake' is not a supported load-balancing algorithm")
41+
end
42+
43+
it 'does not accept unknown option' do
44+
message = RouteUpdateMessage.new(params.merge(options: { gorgonzola: 'gouda' }))
45+
expect(message).not_to be_valid
46+
expect(message.errors.full_messages[0]).to include("Options Unknown field(s): 'gorgonzola'")
47+
end
48+
2649
end
2750
end
2851
end

0 commit comments

Comments
 (0)