aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/info_request_spec.rb
diff options
context:
space:
mode:
authorDavid Cabo <david@calibea.com>2011-08-12 13:12:50 +0200
committerDavid Cabo <david@calibea.com>2011-08-12 13:12:50 +0200
commitdf1754847892bb6abce2681a42d8c50cf8d3a2da (patch)
tree73c518103906ad446cedd55c69690d8d91f0f362 /spec/models/info_request_spec.rb
parenta63e598b9e0ddfa7ac695b1be41aaace6c0eb628 (diff)
parent766df1c7de8f820bd6e451526787632a136bc635 (diff)
Merge branch 'master' of github.com:sebbacon/alaveteli into asktheeu
Conflicts: locale/cy/app.po locale/de/app.po locale/es/app.po locale/fr/app.po locale/sq/app.po locale/sr/app.po locale/sr@latin/app.po
Diffstat (limited to 'spec/models/info_request_spec.rb')
-rw-r--r--spec/models/info_request_spec.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/spec/models/info_request_spec.rb b/spec/models/info_request_spec.rb
index d0b0e0e32..b82052a0f 100644
--- a/spec/models/info_request_spec.rb
+++ b/spec/models/info_request_spec.rb
@@ -2,6 +2,40 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
describe InfoRequest do
+ describe "guessing a request from an email" do
+ fixtures :info_requests, :public_bodies, :incoming_messages, :raw_emails
+
+ before(:each) do
+ @im = incoming_messages(:useless_incoming_message)
+ load_raw_emails_data(raw_emails)
+ end
+
+ it 'should compute a hash' do
+ @info_request = InfoRequest.new(:title => "testing",
+ :public_body => public_bodies(:geraldine_public_body),
+ :user_id => 1)
+ @info_request.save!
+ @info_request.idhash.should_not == nil
+ end
+
+ it 'should find a request based on an email with an intact id and a broken hash' do
+ ir = info_requests(:fancy_dog_request)
+ id = ir.id
+ @im.mail.to = "request-#{id}-asdfg@example.com"
+ guessed = InfoRequest.guess_by_incoming_email(@im)
+ guessed[0].idhash.should == ir.idhash
+ end
+
+ it 'should find a request based on an email with a broken id and an intact hash' do
+ ir = info_requests(:fancy_dog_request)
+ idhash = ir.idhash
+ @im.mail.to = "request-123ab-#{idhash}@example.com"
+ guessed = InfoRequest.guess_by_incoming_email(@im)
+ guessed[0].id.should == ir.id
+ end
+
+ end
+
describe "making up the URL title" do
before do
@info_request = InfoRequest.new