aboutsummaryrefslogtreecommitdiffstats
path: root/spec/integration/parameter_stripping_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/integration/parameter_stripping_spec.rb')
-rw-r--r--spec/integration/parameter_stripping_spec.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/integration/parameter_stripping_spec.rb b/spec/integration/parameter_stripping_spec.rb
new file mode 100644
index 000000000..7e3c0adc2
--- /dev/null
+++ b/spec/integration/parameter_stripping_spec.rb
@@ -0,0 +1,24 @@
+# -*- encoding : utf-8 -*-
+require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
+
+describe "When handling bad requests" do
+
+ if RUBY_VERSION == '1.9.3'
+
+ it 'should return a 404 for GET requests to a malformed request URL' do
+ get 'request/228%85'
+ response.status.should == 404
+ end
+
+ it 'should redirect a bad UTF-8 POST to a malformed attachment URL' do
+ info_request = FactoryGirl.create(:info_request_with_incoming_attachments)
+ incoming_message = info_request.incoming_messages.first
+ data = { :excerpt => "something\xA3\xA1" }
+ post "/en/request/#{info_request.id}/response/#{incoming_message.id}/attach/2/interesting.pdf/trackback", data
+ response.status.should == 303
+ response.should redirect_to "/en/request/#{info_request.url_title}#incoming-#{incoming_message.id}"
+ end
+
+ end
+
+end