aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/public_body_spec.rb
diff options
context:
space:
mode:
authorSteven Day <steve@mysociety.org>2014-08-21 16:39:25 +0100
committerGareth Rees <gareth@mysociety.org>2014-08-22 15:12:39 +0100
commit3803bfc95c380c85ff523681e2099af5a11e16c4 (patch)
tree601bfa7ede3a0b1e4d46a1520f8875d57b794797 /spec/models/public_body_spec.rb
parent447c61405568f3ee5aa81448b9b4b0c0a4df474b (diff)
Make csv import fields a class attribute that can be overriden
Diffstat (limited to 'spec/models/public_body_spec.rb')
-rw-r--r--spec/models/public_body_spec.rb52
1 files changed, 52 insertions, 0 deletions
diff --git a/spec/models/public_body_spec.rb b/spec/models/public_body_spec.rb
index a7544c218..2ee45836b 100644
--- a/spec/models/public_body_spec.rb
+++ b/spec/models/public_body_spec.rb
@@ -546,6 +546,58 @@ CSV
errors.should include("error: line 3: Url name URL name is already taken for authority 'Foobar Test'")
end
+ it 'has a default list of fields to import' do
+ expected_fields = [
+ ['name', '(i18n)<strong>Existing records cannot be renamed</strong>'],
+ ['short_name', '(i18n)'],
+ ['request_email', '(i18n)'],
+ ['notes', '(i18n)'],
+ ['publication_scheme', '(i18n)'],
+ ['disclosure_log', '(i18n)'],
+ ['home_page', ''],
+ ['tag_string', '(tags separated by spaces)'],
+ ]
+
+ expect(PublicBody.csv_import_fields).to eq(expected_fields)
+ end
+
+ it 'allows you to override the default list of fields to import' do
+ old_csv_import_fields = PublicBody.csv_import_fields
+ expected_fields = [
+ ['name', '(i18n)<strong>Existing records cannot be renamed</strong>'],
+ ['short_name', '(i18n)'],
+ ]
+
+ PublicBody.csv_import_fields = expected_fields
+
+ expect(PublicBody.csv_import_fields).to eq(expected_fields)
+
+ # Reset our change so that we don't affect other specs
+ PublicBody.csv_import_fields = old_csv_import_fields
+ end
+
+ it 'allows you to append to the default list of fields to import' do
+ old_csv_import_fields = PublicBody.csv_import_fields
+ expected_fields = [
+ ['name', '(i18n)<strong>Existing records cannot be renamed</strong>'],
+ ['short_name', '(i18n)'],
+ ['request_email', '(i18n)'],
+ ['notes', '(i18n)'],
+ ['publication_scheme', '(i18n)'],
+ ['disclosure_log', '(i18n)'],
+ ['home_page', ''],
+ ['tag_string', '(tags separated by spaces)'],
+ ['a_new_field', ''],
+ ]
+
+ PublicBody.csv_import_fields << ['a_new_field', '']
+
+ expect(PublicBody.csv_import_fields).to eq(expected_fields)
+
+ # Reset our change so that we don't affect other specs
+ PublicBody.csv_import_fields = old_csv_import_fields
+ end
+
end
describe PublicBody do