From: Martyn Taylor mtaylor@redhat.com
--- src/app/models/provider.rb | 3 +++ src/spec/models/provider_spec.rb | 5 ++++- 2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/app/models/provider.rb b/src/app/models/provider.rb index 6ec3cc3..c203d1f 100644 --- a/src/app/models/provider.rb +++ b/src/app/models/provider.rb @@ -34,6 +34,9 @@ class Provider < ActiveRecord::Base validates_presence_of :cloud_type validates_presence_of :url
+ validates_format_of :name, :with => /^[\w -]*$/n, :message => "must only contain: numbers, letters, spaces, '_' and '-'" + validates_length_of :name, :maximum => 255 + has_many :permissions, :as => :permission_object, :dependent => :destroy, :include => [:role], :order => "permissions.id ASC" diff --git a/src/spec/models/provider_spec.rb b/src/spec/models/provider_spec.rb index fcec747..1b86f92 100644 --- a/src/spec/models/provider_spec.rb +++ b/src/spec/models/provider_spec.rb @@ -17,7 +17,10 @@ describe Provider do end
it "should require a valid name" do - [nil, ""].each do |invalid_value| + long_name = "" + 256.times { long_name << 'a' } + + [nil, "", "£*(&", long_name].each do |invalid_value| @provider.name = invalid_value @provider.should_not be_valid end
This patch looks to fix BZ#651353 so should be tested with PostGres :)
----- Original Message ----- From: mtaylor@redhat.com To: deltacloud-devel@lists.fedorahosted.org Cc: "Martyn Taylor" mtaylor@redhat.com Sent: Thursday, November 18, 2010 4:14:54 PM GMT +00:00 GMT Britain, Ireland, Portugal Subject: [PATCH aeolus] BZ#654663/BZ#651353 Added Validation to Name field on Provider Model
From: Martyn Taylor mtaylor@redhat.com
--- src/app/models/provider.rb | 3 +++ src/spec/models/provider_spec.rb | 5 ++++- 2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/app/models/provider.rb b/src/app/models/provider.rb index 6ec3cc3..c203d1f 100644 --- a/src/app/models/provider.rb +++ b/src/app/models/provider.rb @@ -34,6 +34,9 @@ class Provider < ActiveRecord::Base validates_presence_of :cloud_type validates_presence_of :url
+ validates_format_of :name, :with => /^[\w -]*$/n, :message => "must only contain: numbers, letters, spaces, '_' and '-'" + validates_length_of :name, :maximum => 255 + has_many :permissions, :as => :permission_object, :dependent => :destroy, :include => [:role], :order => "permissions.id ASC" diff --git a/src/spec/models/provider_spec.rb b/src/spec/models/provider_spec.rb index fcec747..1b86f92 100644 --- a/src/spec/models/provider_spec.rb +++ b/src/spec/models/provider_spec.rb @@ -17,7 +17,10 @@ describe Provider do end
it "should require a valid name" do - [nil, ""].each do |invalid_value| + long_name = "" + 256.times { long_name << 'a' } + + [nil, "", "£*(&", long_name].each do |invalid_value| @provider.name = invalid_value @provider.should_not be_valid end
ACK
On Nov 18, 2010, at 5:14 PM, mtaylor@redhat.com wrote:
From: Martyn Taylor mtaylor@redhat.com
src/app/models/provider.rb | 3 +++ src/spec/models/provider_spec.rb | 5 ++++- 2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/app/models/provider.rb b/src/app/models/provider.rb index 6ec3cc3..c203d1f 100644 --- a/src/app/models/provider.rb +++ b/src/app/models/provider.rb @@ -34,6 +34,9 @@ class Provider < ActiveRecord::Base validates_presence_of :cloud_type validates_presence_of :url
- validates_format_of :name, :with => /^[\w -]*$/n, :message => "must only contain: numbers, letters, spaces, '_' and '-'"
- validates_length_of :name, :maximum => 255
- has_many :permissions, :as => :permission_object, :dependent => :destroy, :include => [:role], :order => "permissions.id ASC"
diff --git a/src/spec/models/provider_spec.rb b/src/spec/models/provider_spec.rb index fcec747..1b86f92 100644 --- a/src/spec/models/provider_spec.rb +++ b/src/spec/models/provider_spec.rb @@ -17,7 +17,10 @@ describe Provider do end
it "should require a valid name" do
[nil, ""].each do |invalid_value|
long_name = ""
256.times { long_name << 'a' }
[nil, "", "£*(&", long_name].each do |invalid_value| @provider.name = invalid_value @provider.should_not be_valid end
-- 1.7.2.3
deltacloud-devel mailing list deltacloud-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/deltacloud-devel
deltacloud-devel@lists.fedorahosted.org