tests/aws/models/elb/model_tests.rb in fog-maestrodev-1.8.0.20130114204828 vs tests/aws/models/elb/model_tests.rb in fog-maestrodev-1.14.0.20130806165225
- old
+ new
@@ -81,11 +81,11 @@
elb2.destroy
end
# Need to sleep here for IAM changes to propgate
tests('with ListenerDescriptions') do
- @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT_PUBLIC_KEY, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
+ @certificate = Fog::AWS[:iam].upload_server_certificate(AWS::IAM::SERVER_CERT, AWS::IAM::SERVER_CERT_PRIVATE_KEY, @key_name).body['Certificate']
sleep(10) unless Fog.mocking?
listeners = [{
'Listener' => {
'LoadBalancerPort' => 2030, 'InstancePort' => 2030, 'Protocol' => 'HTTP'
},
@@ -248,10 +248,11 @@
end
tests('create app policy') do
elb.policies.create(:id => app_policy_id, :cookie => 'my-app-cookie', :cookie_stickiness => :app)
returns(app_policy_id) { elb.policies.first.id }
+ returns("my-app-cookie") { elb.policies.get(app_policy_id).cookie }
end
tests('get policy') do
returns(app_policy_id) { elb.policies.get(app_policy_id).id }
end
@@ -268,18 +269,44 @@
end
tests('setting a listener policy') do
elb.set_listener_policy(80, lb_policy_id)
returns([lb_policy_id]) { elb.listeners.get(80).policy_names }
+ returns(600) { elb.policies.get(lb_policy_id).expiration }
end
tests('unsetting a listener policy') do
elb.unset_listener_policy(80)
returns([]) { elb.listeners.get(80).policy_names }
end
+ public_key_policy_id = 'fog-public-key-policy'
+ tests('create public key policy') do
+ elb.policies.create(:id => public_key_policy_id, :type_name => 'PublicKeyPolicyType', :policy_attributes => {'PublicKey' => AWS::IAM::SERVER_CERT_PUBLIC_KEY})
+ policy = elb.policies.get(public_key_policy_id)
+
+ returns(public_key_policy_id) { policy.id }
+ returns("PublicKeyPolicyType") { policy.type_name }
+ returns(AWS::IAM::SERVER_CERT_PUBLIC_KEY) { policy.policy_attributes["PublicKey"] }
+ end
+
tests('a malformed policy') do
raises(ArgumentError) { elb.policies.create(:id => 'foo', :cookie_stickiness => 'invalid stickiness') }
+ end
+ end
+
+ tests('backend server descriptions') do
+ tests('default') do
+ returns(0) { elb.backend_server_descriptions.size }
+ end
+
+ tests('with a backend policy') do
+ policy = "EnableProxyProtocol"
+ port = 80
+ elb.policies.create(:id => policy, :type_name => 'ProxyProtocolPolicyType', :policy_attributes => { "ProxyProtocol" => true })
+ Fog::AWS[:elb].set_load_balancer_policies_for_backend_server(elb.id, port, [policy]).body
+ elb.reload
+ returns([policy]) { elb.backend_server_descriptions.get(port).policy_names }
end
end
tests('setting a new ssl certificate id') do
elb.listeners.create(:instance_port => 443, :lb_port => 443, :protocol => 'HTTPS', :instance_protocol => 'HTTPS', :ssl_id => @certificate['Arn'])