aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models
Commit message (Collapse)AuthorAgeLines
* Make test specific to versions of ruby with String.encodeLouise Crow2014-02-24-4/+6
| | | | The code being tested is specific in that way.
* Merge remote-tracking branch ↵Louise Crow2014-02-24-1/+7
|\ | | | | | | 'opennewzealand_github/feature/encode-utf8-messages' into rails-3-develop
| * Add test for _get_attachment_text_internal with invalid utf-8Rowan Crawford2014-02-23-1/+7
| |
* | Merge branch 'feature/batch-requests' into rails-3-developLouise Crow2014-01-29-3/+213
|\ \ | | | | | | | | | | | | | | | Conflicts: config/general.yml-example spec/factories.rb
| * | Send batch requests as a cron job.Louise Crow2013-12-04-0/+40
| | |
| * | Simplify return value, set sent_at in create_batch!Louise Crow2013-12-04-13/+34
| | |
| * | Use public bodies not requests in find_existingLouise Crow2013-12-04-6/+8
| | | | | | | | | | | | The requests may not have been created at this point.
| * | Split the creation of a batch and the associated requests.Louise Crow2013-12-04-10/+9
| | | | | | | | | | | | We're going to want to actually create and send the requests later.
| * | Add the specific salutations to each request.Louise Crow2013-12-04-0/+22
| | | | | | | | | | | | | | | | | | Also, wrap model creation in a transaction and do the message sending separately - we may ultimately want to do this outside the request cycle.
| * | Add check for double submission.Louise Crow2013-12-04-0/+45
| | |
| * | Make method names for finding existing objects clearerLouise Crow2013-12-04-1/+1
| | | | | | | | | | | | | | | They're not finding by the existing object, they're finding an existing object.
| * | Add InfoRequestBatch model.Louise Crow2013-12-04-0/+21
| | | | | | | | | | | | | | | Re-annotate models. Index InfoRequestBatches by user - we'll display the batches for a user when they view their own requests.
| * | Batch users don't have a daily limit.Louise Crow2013-12-04-0/+7
| | | | | | | | | | | | | | | | | | | | | It doesn't make logical sense that they would. However I am preserving the ability to make batch requests as a separate thing from not having a daily limit - I think batch sending requires a (perhaps marginally) bigger level of trust.
| * | Add some specs for existing exceeded_limit? behaviourLouise Crow2013-12-04-0/+24
| | |
| * | Create a placeholder salutation for a batch request template.Louise Crow2013-12-04-2/+12
| | |
| * | Handle the application of censor rules to a batch request template.Louise Crow2013-12-04-0/+6
| | |
| * | Add a batch_request_template flagLouise Crow2013-12-04-0/+13
| | | | | | | | | | | | | | | | | | A virtual attribute to use to customise some info request behaviours when we are using one request as a template for creating multiple requests.
* | | Merge branch 'feature/1176-automate-authority-contacts' into rails-3-developLouise Crow2014-01-28-0/+139
|\ \ \ | | | | | | | | | | | | | | | | Conflicts: doc/CHANGES.md
| * | | Populate admin public body forms based on a change request.Louise Crow2014-01-13-0/+29
| | | | | | | | | | | | | | | | | | | | Also add editable text for an email to be sent to the person requesting the change.
| * | | Form and models for asking for a public body change.Louise Crow2014-01-13-0/+110
| | |/ | |/|
* | | Merge branch 'feature/cache-request-lists' into rails-3-developLouise Crow2014-01-28-0/+96
|\ \ \
| * | | Cache frequently accessed request lists.Louise Crow2013-12-19-0/+96
| |/ / | | | | | | | | | Make specs a bit more focused, remove view specs - they're not relevant to the new code in their current form and don't seem to merit updating.
* | | Merge branch 'feature/1269-improve-quoting-recognition' into rails-3-developLouise Crow2014-01-27-2/+2
|\ \ \
| * | | Tighten up expectation, make expected files consistent.Louise Crow2014-01-17-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Just expecting the parsed file to include the expected one would mean success in the case where nothing has been folded. Tighten up the expectation, and add quoting placeholders to expected files that didn't have them.
* | | | Merge branch 'feature/fix-profile-photo-errors' into rails-3-developLouise Crow2014-01-27-7/+15
|\ \ \ \ | |/ / / |/| | |
| * | | Make custom error messages translated.Louise Crow2014-01-08-7/+15
| |/ /
* / / 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
* Merge branch 'move-plugins-out-of-vendor-plugins' into rails-3-developMark Longair2013-12-03-1/+1
|\
| * Move acts_as_xapian out of vendor/pluginsMark Longair2013-11-29-1/+1
| | | | | | | | | | This includes making making sure that xapiandbs directory is moved with this version of the code.
* | Move getting recent requests into a helper method.Louise Crow2013-11-25-0/+37
| |
* | Move getting similar requests to the InfoRequest model.Louise Crow2013-11-25-2/+19
|/
* 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-19/+22
| | | | 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.
* Merge remote-tracking branch 'origin/fix-aborted-transaction' into ↵Louise Crow2013-10-07-19/+4
|\ | | | | | | rails-3-develop
| * Factor out a 'with_duplicate_xapian_job_creation' helperMark Longair2013-10-07-19/+4
| | | | | | | | | | | | | | | | | | | | In a subsequent commit, we will want to wrap an additional section of code with the addition and removal of a hook that creates a duplicate xapian job, so it's useful for this to be factored out. This commit introduces a 'with_duplicate_xapian_job_creation' method that can be passed a block which will be run with the forced duplicate xapian job creation.
* | Merge branch 'feature/email-subject-cleanup' into rails-3-developLouise Crow2013-10-07-0/+10
|\ \ | |/ |/|
| * Move special case to whatdotheyknow-themeLouise Crow2013-10-04-0/+10
| | | | | | | | | | Apart from anything else, we don't want translators to have to worry about the special case text. See https://github.com/mysociety/whatdotheyknow-theme/commit/2078febca5181ce3b1a9c0fae0123ae5f6448718 for the corresponding change to whatdotheyknow-theme.
* | 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 '.'.
* Fix typoLouise Crow2013-09-19-1/+1
|
* Handle salutations with regexp special characters.Louise Crow2013-09-19-0/+10
| | | | Fixes #1104.
* Merge branch 'hotfix/0.13.0.3' into rails-3-developLouise Crow2013-09-18-0/+37
|\
| * Restrict old_unclassified methods to normal prominence.0.13.0.3hotfix/0.13.0.3Louise Crow2013-09-18-0/+37
| | | | | | | | Fixes #1082.