aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models')
-rw-r--r--spec/models/info_request_batch_spec.rb13
-rw-r--r--spec/models/info_request_spec.rb1
-rw-r--r--spec/models/public_body_spec.rb21
-rw-r--r--spec/models/spam_address_spec.rb10
-rw-r--r--spec/models/user_spec.rb37
5 files changed, 63 insertions, 19 deletions
diff --git a/spec/models/info_request_batch_spec.rb b/spec/models/info_request_batch_spec.rb
index 53158ebe2..2881e7745 100644
--- a/spec/models/info_request_batch_spec.rb
+++ b/spec/models/info_request_batch_spec.rb
@@ -1,3 +1,16 @@
+# == Schema Information
+#
+# Table name: info_request_batches
+#
+# id :integer not null, primary key
+# title :text not null
+# user_id :integer not null
+# created_at :datetime not null
+# updated_at :datetime not null
+# body :text
+# sent_at :datetime
+#
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
describe InfoRequestBatch, "when validating" do
diff --git a/spec/models/info_request_spec.rb b/spec/models/info_request_spec.rb
index 9766f928f..12499f50a 100644
--- a/spec/models/info_request_spec.rb
+++ b/spec/models/info_request_spec.rb
@@ -21,6 +21,7 @@
# external_url :string(255)
# attention_requested :boolean default(FALSE)
# comments_allowed :boolean default(TRUE), not null
+# info_request_batch_id :integer
#
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
diff --git a/spec/models/public_body_spec.rb b/spec/models/public_body_spec.rb
index dc09bdfa6..38e31783d 100644
--- a/spec/models/public_body_spec.rb
+++ b/spec/models/public_body_spec.rb
@@ -5,7 +5,7 @@
#
# id :integer not null, primary key
# name :text not null
-# short_name :text not null
+# short_name :text default(""), not null
# request_email :text not null
# version :integer not null
# last_edit_editor :string(255) not null
@@ -205,6 +205,12 @@ describe PublicBody, " when saving" do
pb.first_letter.should == 'Å'
end
+ it "should not save if the url_name is already taken" do
+ existing = FactoryGirl.create(:public_body)
+ pb = PublicBody.new(existing.attributes)
+ pb.should have(1).errors_on(:url_name)
+ end
+
it "should save the name when renaming an existing public body" do
public_body = public_bodies(:geraldine_public_body)
public_body.name = "Mark's Public Body"
@@ -527,6 +533,19 @@ describe PublicBody, " when loading CSV files" do
PublicBody.count.should == original_count + 3
end
+ it "should handle active record validation errors" do
+ csv = <<-CSV
+#name,request_email,short_name
+Foobar,a@example.com,foobar
+Foobar Test,b@example.com,foobar
+CSV
+
+ csv_contents = normalize_string_to_utf8(csv)
+ errors, notes = PublicBody.import_csv(csv_contents, '', 'replace', true, 'someadmin') # true means dry run
+
+ errors.should include("error: line 3: Url name URL name is already taken for authority 'Foobar Test'")
+ end
+
end
describe PublicBody do
diff --git a/spec/models/spam_address_spec.rb b/spec/models/spam_address_spec.rb
index 79a1afd11..f28440121 100644
--- a/spec/models/spam_address_spec.rb
+++ b/spec/models/spam_address_spec.rb
@@ -1,3 +1,13 @@
+# == Schema Information
+#
+# Table name: spam_addresses
+#
+# id :integer not null, primary key
+# email :string(255) not null
+# created_at :datetime not null
+# updated_at :datetime not null
+#
+
require 'spec_helper'
describe SpamAddress do
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index b6f48dad3..c54043092 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -2,24 +2,25 @@
#
# Table name: users
#
-# id :integer not null, primary key
-# email :string(255) not null
-# name :string(255) not null
-# hashed_password :string(255) not null
-# salt :string(255) not null
-# created_at :datetime not null
-# updated_at :datetime not null
-# email_confirmed :boolean default(FALSE), not null
-# url_name :text not null
-# last_daily_track_email :datetime default(2000-01-01 00:00:00 UTC)
-# admin_level :string(255) default("none"), not null
-# ban_text :text default(""), not null
-# about_me :text default(""), not null
-# locale :string(255)
-# email_bounced_at :datetime
-# email_bounce_message :text default(""), not null
-# no_limit :boolean default(FALSE), not null
-# receive_email_alerts :boolean default(TRUE), not null
+# id :integer not null, primary key
+# email :string(255) not null
+# name :string(255) not null
+# hashed_password :string(255) not null
+# salt :string(255) not null
+# created_at :datetime not null
+# updated_at :datetime not null
+# email_confirmed :boolean default(FALSE), not null
+# url_name :text not null
+# last_daily_track_email :datetime default(Sat Jan 01 00:00:00 UTC 2000)
+# admin_level :string(255) default("none"), not null
+# ban_text :text default(""), not null
+# about_me :text default(""), not null
+# locale :string(255)
+# email_bounced_at :datetime
+# email_bounce_message :text default(""), not null
+# no_limit :boolean default(FALSE), not null
+# receive_email_alerts :boolean default(TRUE), not null
+# can_make_batch_requests :boolean default(FALSE), not null
#
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')