aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/public_body_spec.rb
Commit message (Collapse)AuthorAgeLines
* Fix test failures in PublicBody overrideable CSV import specsSteven Day2014-08-22-2/+2
|
* Make csv import fields a class attribute that can be overridenSteven Day2014-08-22-0/+52
|
* Merge branch 'issues/1415-bulk-update-public-bodies' into rails-3-developGareth Rees2014-06-25-0/+14
|\
| * Move PublicBody domain logic from controllerGareth Rees2014-06-06-0/+14
| | | | | | | | | | | | Moves the magic 'site_administration' tag logic to the PublicBody model. Easier to make the string passed to `PublicBody#has_tag?` configurable if we want to allow this to be set per install.
* | Rename XXX comments with TODO:Gareth Rees2014-06-10-1/+1
|/ | | | Picks these up in `rake notes` and adds semantic meaning
* Handle validation errors in PublicBody.import_csvGareth Rees2014-04-14-0/+13
| | | | | | | | | Specifically using save! so that anything other than an ActiveRecord::RecordInvalid doesn't get missed Note that ActiveModel::Errors#full_messages includes the attribute key in the message. This is by design, so we should consider whether we can improve the way that we use translated validation messages.
* Add missing validation to PublicBodyGareth Rees2014-04-14-0/+6
| | | | | There's a unique index on public_bodies url_name, so we should have a validation for that.
* Annotate modelsGareth Rees2014-04-09-1/+1
| | | | | Should have been run after related migrations. Could automate this to always run after migrations.
* Add further tests for creation of the internal admin bodyMark Longair2014-01-09-0/+31
| | | | | | | | The internal admin body should be created automatically if it doesn't exist on calls to PublicBody.internal_admin_body; we've seen errors (#1001) where this fails after the default locale changes. (Although these tests don't actually replicate that problem.)
* Merge branch 'feature/locale-underscore-fixes' into rails-3-developLouise Crow2013-12-09-0/+18
|\
| * Make sure globalize uses the right locale version when updating.Louise Crow2013-12-05-0/+9
| |
| * Search for bodies using the underscore version of the locale.Louise Crow2013-12-05-0/+9
| |
* | Fix the command-line CSV importer under Ruby 1.9Mark Longair2013-12-03-0/+14
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Under Ruby 1.8.7, you can parse a CSV file with the following code (Example A): require 'csv' CSV.parse('foo.csv') do |row| puts "got row: #{row.inspect}" end Rather confusingly, under Ruby 1.8.7, CSV.parse can also take a string representation of the contents of the file as its parameter, so this also works (Example B): require 'csv' CSV.parse("1,hello,red\n2,goodbye,green") do |row| puts "got row: #{row.inspect}" end However under Ruby 1.9.3, CSV.parse only expects a string representation of the contents of the CSV file, so only Example B works; Example B fails silently (interpreting the filename as a single cell CSV file, typically). The import:import_csv rake task unfortunately relied on both A and B working. This commit fixes this by adding PublicBody.import_csv_from_file, and refactoring PublicBody.import_csv to use the newly added class method, and adds a test to check for any regression in this behaviour. (This means that the usage of import_csv in the admin public body controller's import_csv action could now be changed to use PublicBody.import_csv_from_file directly from the uploaded file, which would be more efficient and cope with larger files without using lots of memory.) Fixes #1229
* Don't include public bodies tagged 'test' in public body statisticsMark Longair2013-11-07-0/+44
| | | | | | | | | | In the initial release of public body statistics to WhatDoTheyKnow a public body only intended for testing ("mySociety Test Quango") was included in the statistics. This commit causes public bodies tagged with "test" to be excluded from the public body statistics page. Fixes #1115.
* For percentage stats, exclude hidden or unclassified requestsMark Longair2013-11-05-0/+30
| | | | | | | | The WDTK volunteers pointed out that it's not fair to include hidden requests in the denominator, since they're typically hidden for a good reason (e.g. being vexatious, spam, etc.), and we have no information about those that are awaiting_description (i.e. unclassified) so they should be excluded as well.
* Add a info_requests_visible_classified_count column to PublicBodyMark Longair2013-11-05-20/+21
| | | | | | This counts only those info requests that have prominence 'normal' (i.e. are not hidden) and are not 'awaiting_description' (i.e. that they have had some basic status classification).
* Update the helpful model schema annotationsMark Longair2013-11-01-17/+20
| | | | These are regenerated with "bundle exec annotate"
* Add data to test example given in #1143Louise Crow2013-10-21-11/+14
| | | | This causes several specs to fail.
* Fix upcasing of a non-US-ASCII first letter under Ruby 1.8Mark Longair2013-10-04-0/+11
| | | | | | | | In the rare circumstance that someone created a public body whose name started with a lower case letter outside [a-z] with Alaveteli running under Ruby 1.8, the letter would not be upcased correctly before saving to the first_letter column. This commit fixes that by using a Unicode-aware upcase function.
* Add to fixtures a public body with an accented initial letterMark Longair2013-10-04-7/+7
| | | | | | | | | | | | | | | | | This adds a public body called "Åčçèñtéd Authority" in the Czech locale (cs) so that we can create tests that exercise, for example, searching based on an initial letter that has a multi-byte representation in UTF-8. An old test for "add mass tags" in the admin needed to be updated since it implicitly assumed that all the public bodies in the fixtures had translations in the :en locale. The tests for loading CSV files of public bodies also needed to be updated, since they were assuming that public body names only contained letters in [A-Za-z ]. Since Unicode character classes aren't easily available in Ruby 1.8 and it makes little difference to the test, the character class is replaced by '.'.
* Merge branch 'feature/hide-individual-responses' into rails-3-developLouise Crow2013-09-17-0/+23
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: Gemfile app/views/admin_request/edit_outgoing.html.erb config/packages doc/CHANGES.md doc/INSTALL.md spec/models/info_request_spec.rb spec/models/public_body_spec.rb
| * Re-annotate models with database fieldsLouise Crow2013-09-16-0/+23
| |
* | Don't dirty every attribute in checking for whitespace.Louise Crow2013-09-05-15/+31
| | | | | | | | | | | | | | Check to see if the stripped version is different before setting it on the record. If we don't do this, the subsequent call to write_attribute in Globalize3 which uses attribute_will_change! means we're storing versions when there hasn't really been any change.
* | Update tests for changes to fixture file.Louise Crow2013-08-14-14/+18
|/
* Use AlaveteliConfiguration wrapper in test so we can be more specific about ↵Louise Crow2013-07-23-1/+1
| | | | the method to be stubbed and avoid side effects.
* Add a test that exposes a problem we have with renaming attributesHenare Degan2013-02-07-0/+8
|
* Set locale with I18n rather than through globalizeMatthew Landauer2013-01-17-3/+3
|
* Extract methodMatthew Landauer2012-09-27-1/+1
|
* Add option to override all public body request emailsMatthew Landauer2012-09-27-0/+8
|
* Memoize the notes_without_html calculated value for the life of the model ↵Louise Crow2012-09-12-0/+14
| | | | instance - no need to keep applying the regex if called multiple times e.g. in a view.
* Quote name correctly in query. Fixes #598.Louise Crow2012-09-04-0/+4
|
* Update references to point to the mySociety repo.Louise Crow2012-08-29-32/+32
|
* Don't add http when https is presentHenare Degan2012-02-17-0/+6
|
* Don't add extra www characters to web addresses that have been explicitly ↵Henare Degan2012-02-16-1/+1
| | | | defined
* Make public authority home page links work. Fixes #271Henare Degan2012-02-16-0/+6
|
* Add some tests for the public body home page calculationHenare Degan2012-02-16-0/+22
|
* Load all fixtures for all testsRobin Houston2012-01-31-3/+0
| | | | | | | | | The ad hoc specification of fixtures has been an ongoing source of bugs in the tests. The straw that broke the camel’s back is that 7c6eb09 requires the fixtures to be loaded in order (i.e. children before their parents), and it would have been a painful process to reorder all the dozens of different fixture lists, but the test system ought to be more reliable this way.
* Remove stray puts in test codeRobin Houston2012-01-27-1/+0
| | | | | This was added for temporary debugging purposes, and ought to have been removed.
* Refactor test code so new test data can be addedRobin Houston2012-01-26-22/+22
| | | | | | | | Previously many of the tests made assumptions about the global structure of the test data set: the total number of requests, for example, or the names of all public bodies. This makes it difficult to add to the test data. This change is intended to make the test data easier to extend by eliminating such global assumptions.
* Always create a the Internal Admin Authority using the default locale. ↵Seb Bacon2011-12-02-0/+12
| | | | Fixes #303.
* Merge remote-tracking branch 'jpmckinney/pre1.9' into developSeb Bacon2011-11-24-12/+12
|\ | | | | | | | | Conflicts: spec/controllers/request_controller_spec.rb
| * sort hash keys consistently in Ruby 1.8 and 1.9James McKinney2011-10-17-12/+12
| |
* | allow specs to run independentlyJames McKinney2011-10-16-2/+2
|/
* Check against default locale more robustly when importing public bodies. ↵David Cabo2011-09-24-1/+4
| | | | Fixes #193
* Add test for issues #191 and #192, and fix existing onesDavid Cabo2011-09-24-18/+28
|
* Add support for add/replace tags when importing public bodies from CSV. ↵David Cabo2011-09-19-24/+46
| | | | Fixes #60
* Add support for tags to CSV import, via field "tag_string" (issue #60)David Cabo2011-09-13-6/+26
|
* Make tag optional when importing public bodies through CSV (issue #60)David Cabo2011-09-13-0/+22
|
* Extend CSV import to support additional fields (short name, home page...)David Cabo2011-08-23-20/+29
|
* Don't fail if a body has the same url_name in several locales (closes #139)David Cabo2011-08-16-0/+14
|