diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/request_controller_spec.rb | 7 | ||||
-rw-r--r-- | spec/fixtures/files/iso8859_2_email.html | 18 | ||||
-rw-r--r-- | spec/fixtures/files/iso8859_2_raw_email.email | 50 | ||||
-rw-r--r-- | spec/lib/tmail_extensions_spec.rb | 9 |
4 files changed, 84 insertions, 0 deletions
diff --git a/spec/controllers/request_controller_spec.rb b/spec/controllers/request_controller_spec.rb index aa3027c00..bff3abce5 100644 --- a/spec/controllers/request_controller_spec.rb +++ b/spec/controllers/request_controller_spec.rb @@ -137,6 +137,13 @@ describe RequestController, "when showing one request" do response.should have_text(/First hello/) end + it "should convert message body to UTF8" do + ir = info_requests(:fancy_dog_request) + receive_incoming_mail('iso8859_2_raw_email.email', ir.incoming_email) + get :show, :url_title => 'why_do_you_have_such_a_fancy_dog' + response.should have_text(/tënde/u) + end + it "should generate valid HTML verson of plain text attachments " do ir = info_requests(:fancy_dog_request) receive_incoming_mail('incoming-request-two-same-name.email', ir.incoming_email) diff --git a/spec/fixtures/files/iso8859_2_email.html b/spec/fixtures/files/iso8859_2_email.html new file mode 100644 index 000000000..c7384a831 --- /dev/null +++ b/spec/fixtures/files/iso8859_2_email.html @@ -0,0 +1,18 @@ +<html> +<head> +<style><!-- +.hmmessage P +{ +margin:0px; +padding:0px +} +body.hmmessage +{ +font-size: 10pt; +font-family:Tahoma +} +--></style> +</head> +<body class='hmmessage'><div dir='ltr'> +<div>Faleminderit per kerkesen tënde.</div> </div></body> +</html> diff --git a/spec/fixtures/files/iso8859_2_raw_email.email b/spec/fixtures/files/iso8859_2_raw_email.email new file mode 100644 index 000000000..2ac3b2533 --- /dev/null +++ b/spec/fixtures/files/iso8859_2_raw_email.email @@ -0,0 +1,50 @@ +From: EMAIL_FROM +To: FOI Person <EMAIL_TO> +Bcc: +Reply-To: +In-Reply-To: <471f1eae5d1cb_7347..fdbe67386163@cat.tmail> +Content-Type: multipart/alternative; + boundary="_d47fc84f-c9cd-4fb3-ab16-15de158c8eef_" +Subject: =?iso-8859-2?Q?RE:_Freedo?= =?iso-8859-2?Q?m_of_Infor?= + =?iso-8859-2?Q?mation_req?= =?iso-8859-2?Q?uest_-_Sas?= + =?iso-8859-2?Q?ia_e_pulav?= =?iso-8859-2?Q?e_t=EB_impor?= + =?iso-8859-2?Q?tuara_gjat?= =?iso-8859-2?Q?=EB_vitit_20?= =?iso-8859-2?Q?10?= +Date: Fri, 30 Sep 2011 11:06:39 +0200 + +--_d47fc84f-c9cd-4fb3-ab16-15de158c8eef_ +Content-Type: text/plain; charset="iso-8859-2" +Content-Transfer-Encoding: quoted-printable + + +I nderuari Besnik=2C=20 +Faleminderit per kerkesen t=EBnde.Numri i puleve te importuara ne vitin 201= +0 ka qene 5 milion e treqind mije sosh (me numra 3=2C500=2C000) + + +--_d47fc84f-c9cd-4fb3-ab16-15de158c8eef_ +Content-Type: text/html; charset="iso-8859-2" +Content-Transfer-Encoding: quoted-printable + +<html> +<head> +<style><!-- +.hmmessage P +{ +margin:0px=3B +padding:0px +} +body.hmmessage +{ +font-size: 10pt=3B +font-family:Tahoma +} +--></style> +</head> +<body class=3D'hmmessage'><div dir=3D'ltr'> +<div>I nderuari Besnik=2C =3B</div><div><br></div><div>Faleminderit per= + kerkesen t=EBnde.</div>Numri i puleve te importuara ne vitin 2010 ka qene = +5 milion e treqind mije sosh (me numra 3=2C500=2C000)<br><br></body> +</html>= + +--_d47fc84f-c9cd-4fb3-ab16-15de158c8eef_-- + diff --git a/spec/lib/tmail_extensions_spec.rb b/spec/lib/tmail_extensions_spec.rb index c647fe522..ffb8cb178 100644 --- a/spec/lib/tmail_extensions_spec.rb +++ b/spec/lib/tmail_extensions_spec.rb @@ -27,5 +27,14 @@ describe "when using TMail" do mail.to.should == ["request-66666-caa77777@whatdotheyknow.com", "foi@example.com"] end + it 'should convert to utf8' do + # NB this isn't actually a TMail extension, but is core TMail; + # this was just a convenient place to assert the UTF8 + # conversion is working + mail = TMail::Mail.parse(load_file_fixture('iso8859_2_raw_email.email')) + mail.subject.should have_text(/gjatë/u) + mail.body.is_utf8?.should == true + end + end |