Permalink
Browse files

[Vcloud] Basic tests for node(s)

  • Loading branch information...
1 parent 150778a commit 8089f457363e68c2ed639ed8c9f59136ca53061d freeformz committed Jun 30, 2010
@@ -0,0 +1,38 @@
+require File.join(File.dirname(__FILE__),'..','..','..','spec_helper')
+
+if Fog.mocking?
+ describe "Fog::Vcloud::Terremark::Ecloud::Node", :type => :mock_tmrk_ecloud_model do
+
+ subject { @vcloud.vdcs.first.public_ips.first.internet_services.first.nodes.first }
+
+ describe :class do
+ subject { Fog::Vcloud::Terremark::Ecloud::Node }
+
+ it { should have_identity :href }
+ it { should have_only_these_attributes [:href, :ip_address, :description, :name, :port, :enabled, :id] }
+ end
+
+ context "with no uri" do
+
+ subject { Fog::Vcloud::Terremark::Ecloud::Node.new() }
+ it { should have_all_attributes_be_nil }
+
+ end
+
+ context "as a collection member" do
+ subject { @vcloud.vdcs.first.public_ips.first.internet_services.first.nodes.first.reload }
+
+ it { should be_an_instance_of Fog::Vcloud::Terremark::Ecloud::Node }
+
+ its(:href) { should == @mock_node[:href] }
+ its(:identity) { should == @mock_node[:href] }
+ its(:name) { should == @mock_node[:name] }
+ its(:id) { should == @mock_node[:id] }
+ its(:port) { should == @mock_node[:port] }
+ its(:enabled) { should == @mock_node[:enabled] }
+ its(:description) { should == @mock_node[:description] }
+
+ end
+ end
+else
+end
@@ -0,0 +1,29 @@
+require File.join(File.dirname(__FILE__),'..','..','..','spec_helper')
+
+if Fog.mocking?
+ describe "Fog::Vcloud::Terremark::Ecloud::InternetServices", :type => :mock_tmrk_ecloud_model do
+ context "as an attribute of an internet_service" do
+ subject { @vcloud.vdcs.first.public_ips.first.internet_services.first }
+
+ it { should respond_to :nodes }
+
+ describe :class do
+ subject { @vcloud.vdcs.first.public_ips.first.internet_services.first.nodes.class }
+ its(:model) { should == Fog::Vcloud::Terremark::Ecloud::Node }
+ end
+
+ describe :nodes do
+ subject { @vcloud.vdcs.first.public_ips.first.internet_services.first.nodes }
+
+ it { should respond_to :create }
+
+ it { should be_an_instance_of Fog::Vcloud::Terremark::Ecloud::Nodes }
+
+ its(:length) { should == 2 }
+
+ it { should have_members_of_the_right_model }
+ end
+ end
+ end
+else
+end

0 comments on commit 8089f45

Please sign in to comment.