requires "spec fixes and updates" patch to be applied first
---
.../controllers/portal_pool_controller_spec.rb | 9 +++++++++
src/spec/controllers/provider_controller_spec.rb | 10 ++++++++++
src/spec/controllers/realms_controller_spec.rb | 19 +++++++++++++++++++
src/spec/factories/provider.rb | 8 ++++++++
src/spec/factories/realm.rb | 13 +++++++++++++
src/spec/models/portal_pool_spec.rb | 18 ++++++++++++++++++
6 files changed, 77 insertions(+), 0 deletions(-)
create mode 100644 src/spec/controllers/realms_controller_spec.rb
create mode 100644 src/spec/factories/realm.rb
create mode 100644 src/spec/models/portal_pool_spec.rb
diff --git a/src/spec/controllers/portal_pool_controller_spec.rb
b/src/spec/controllers/portal_pool_controller_spec.rb
index bc01a31..c19470f 100644
--- a/src/spec/controllers/portal_pool_controller_spec.rb
+++ b/src/spec/controllers/portal_pool_controller_spec.rb
@@ -29,5 +29,14 @@ describe PortalPoolController do
response.should redirect_to("http://test.host/portal_pool/show/#{id}")
end
+ it "should provide ui to view realms" do
+ UserSession.create(@admin)
+ pool = Factory :tpool
+
+ get :realms, :id => pool.id
+ response.should be_success
+ assigns[:realms].size.should == pool.providers.collect { |pr| pr.realms
}.flatten.size
+ response.should render_template("realms")
+ end
end
diff --git a/src/spec/controllers/provider_controller_spec.rb
b/src/spec/controllers/provider_controller_spec.rb
index 9015a00..6cfb193 100644
--- a/src/spec/controllers/provider_controller_spec.rb
+++ b/src/spec/controllers/provider_controller_spec.rb
@@ -32,4 +32,14 @@ describe ProviderController do
response.should_not be_success
end
+ it "should provide ui to view realms" do
+ UserSession.create(@admin)
+ provider = @admin_permission.permission_object
+
+ get :realms, :id => provider.id
+ response.should be_success
+ assigns[:realms].size.should == provider.realms.size
+ response.should render_template("realms")
+ end
+
end
diff --git a/src/spec/controllers/realms_controller_spec.rb
b/src/spec/controllers/realms_controller_spec.rb
new file mode 100644
index 0000000..8cd9e44
--- /dev/null
+++ b/src/spec/controllers/realms_controller_spec.rb
@@ -0,0 +1,19 @@
+require 'spec_helper'
+
+describe RealmsController do
+
+ before(:each) do
+ @admin_permission = Factory :admin_permission
+ @admin = @admin_permission.user
+ activate_authlogic
+ end
+
+ it "should provide ui to view all realms" do
+ UserSession.create(@admin)
+ get :index
+ response.should be_success
+ assigns[:realms].size.should == Realm.count
+ response.should render_template("index")
+ end
+
+end
diff --git a/src/spec/factories/provider.rb b/src/spec/factories/provider.rb
index 921d54b..7c25677 100644
--- a/src/spec/factories/provider.rb
+++ b/src/spec/factories/provider.rb
@@ -5,4 +5,12 @@ Factory.define :mock_provider, :parent => :provider do |p|
p.name 'mock1'
p.cloud_type 'mock'
p.url 'http://localhost:3001/api'
+ p.after_create { |p| p.realms << Factory(:realm1, :provider => p) <<
Factory(:realm2, :provider => p) }
+end
+
+Factory.define :mock_provider2, :parent => :provider do |p|
+ p.name 'mock2'
+ p.cloud_type 'mock'
+ p.url 'http://localhost:3001/api'
+ p.after_create { |p| p.realms << Factory(:realm3, :provider => p) }
end
diff --git a/src/spec/factories/realm.rb b/src/spec/factories/realm.rb
new file mode 100644
index 0000000..93a6516
--- /dev/null
+++ b/src/spec/factories/realm.rb
@@ -0,0 +1,13 @@
+Factory.define :realm do |r|
+ r.sequence(:name) { |n| "realm#{n}" }
+ r.sequence(:external_key) { |n| "key#{n}" }
+end
+
+Factory.define :realm1, :parent => :realm do |r|
+end
+
+Factory.define :realm2, :parent => :realm do |r|
+end
+
+Factory.define :realm3, :parent => :realm do |r|
+end
diff --git a/src/spec/models/portal_pool_spec.rb
b/src/spec/models/portal_pool_spec.rb
new file mode 100644
index 0000000..104064b
--- /dev/null
+++ b/src/spec/models/portal_pool_spec.rb
@@ -0,0 +1,18 @@
+require 'spec_helper'
+
+describe PortalPool do
+ before(:each) do
+ end
+
+ it "should return all associated providers" do
+ provider1, provider2 = Factory(:mock_provider), Factory(:mock_provider2)
+
+ pool = PortalPool.new
+ pool.cloud_accounts << CloudAccount.new(:provider => provider1)
+ pool.cloud_accounts << CloudAccount.new(:provider => provider2)
+
+ providers = pool.providers
+ providers.include?(provider1).should be_true
+ providers.include?(provider2).should be_true
+ end
+end
--
1.6.2.5
_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel