diff --git a/History.txt b/History.txt index 4195c89..daed3fa 100644 --- a/History.txt +++ b/History.txt @@ -1,3 +1,8 @@ +### 2.1.3 / 2008-11-06 (Dr. Ramonolith Chesterfield - Military pharmaceutical psychotropic drug manufacturing expert + +* 1 minor enhancement + * added mms.ae support + ### 2.1.2 / 2008-10-21 (Toki's mom, Anja Wartooth) * 2 minor enhancments diff --git a/Manifest.txt b/Manifest.txt index 2771389..f1f396a 100644 --- a/Manifest.txt +++ b/Manifest.txt @@ -9,6 +9,7 @@ conf/bellsouth.net.yml conf/mediamessaging.o2.co.uk.yml conf/messaging.nextel.com.yml conf/mms.3ireland.ie.yml +conf/mms.ae.yml conf/mms.alltel.com.yml conf/mms.att.net.yml conf/mms.dobson.net.yml @@ -75,6 +76,7 @@ test/fixtures/luxgsm-image-01.mail test/fixtures/maroctelecom-france-mms-01.mail test/fixtures/mediamessaging_o2_co_uk-image-01.mail test/fixtures/mmode-image-01.mail +test/fixtures/mms.ae-image-01.mail test/fixtures/mms.mycricket.com-pic-and-text.mail test/fixtures/mms.mycricket.com-pic.mail test/fixtures/mmsreply.t-mobile.co.uk-text-image-01.mail @@ -132,6 +134,7 @@ test/test_messaging_nextel_com.rb test/test_messaging_sprintpcs_com.rb test/test_mms2r_media.rb test/test_mms_3ireland_ie.rb +test/test_mms_ae.rb test/test_mms_alltel_com.rb test/test_mms_att_net.rb test/test_mms_dobson_net.rb diff --git a/README.txt b/README.txt index ecf9c92..7767909 100644 --- a/README.txt +++ b/README.txt @@ -49,6 +49,7 @@ Corpus of carriers currently processed by MMS2R: * Sprint: pm.sprint.com, messaging.sprintpcs.com * T-Mobile: tmomail.net, mmsreply.t-mobile.co.uk * TELUS Corporation (Canada): mms.telusmobility.com, msg.telus.com +* UAE MMS: mms.ae * Unicel: unicel.com, info2go.com (note: mobile number is tucked away in a text/plain part for unicel.com) * Verizon: vzwpix.com, vtext.com diff --git a/conf/mms.ae.yml b/conf/mms.ae.yml new file mode 100644 index 0000000..8cb632b --- /dev/null +++ b/conf/mms.ae.yml @@ -0,0 +1,5 @@ +--- +ignore: + application/smil: + - /^pres\.smil/i + diff --git a/lib/mms2r.rb b/lib/mms2r.rb index ae09ad6..34b28dc 100644 --- a/lib/mms2r.rb +++ b/lib/mms2r.rb @@ -39,7 +39,7 @@ class MMS2R::Media ## # MMS2R library version - VERSION = '2.1.2' + VERSION = '2.1.3' end diff --git a/mms2r.gemspec b/mms2r.gemspec index dd5af2b..c0ad862 100644 --- a/mms2r.gemspec +++ b/mms2r.gemspec @@ -1,14 +1,14 @@ Gem::Specification.new do |s| s.name = %q{mms2r} - s.version = "2.1.2" + s.version = "2.1.3" s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version= s.authors = ["Mike Mondragon"] - s.date = %q{2008-10-21} + s.date = %q{2008-11-06} s.description = %q{== DESCRIPTION MMS2R is a library that decodes the parts of an MMS message to disk while stripping out advertising injected by the mobile carriers. MMS messages are multipart email and the carriers often inject branding into these messages. Use MMS2R if you want to get at the real user generated content from a MMS without having to deal with the cruft from the carriers. If MMS2R is not aware of a particular carrier no extra processing is done to the MMS other than decoding and consolidating its media. Contact the author to add additional carriers to be processed by the library. Suggestions and patches appreciated and welcomed! Corpus of carriers currently processed by MMS2R: * 1nbox/Idea: 1nbox.net * 3 Ireland: mms.3ireland.ie * Alltel: mms.alltel.com * AT&T/Cingular/Legacy: mms.att.net, txt.att.net, mmode.com, mms.mycingular.com, cingularme.com * Bell Canada: txt.bell.ca * Bell South / Suncom: bellsouth.net * Cricket Wireless: mms.mycricket.com * Dobson/Cellular One: mms.dobson.net * Helio: mms.myhelio.com * Hutchison 3G UK Ltd: mms.three.co.uk * INDOSAT M2: mobile.indosat.net.id * LUXGSM S.A.: mms.luxgsm.lu * Maroc Telecom / mms.mobileiam.ma * MTM South Africa: mms.mtn.co.za * NetCom (Norway): mms.netcom.no * Nextel: messaging.nextel.com * O2 Germany: mms.o2online.de * O2 UK: mediamessaging.o2.co.uk * Orange & Regional Oranges: orangemms.net, mmsemail.orange.pl, orange.fr * PLSPICTURES.COM mms hosting: waw.plspictures.com * PXT New Zealand: pxt.vodafone.net.nz * Rogers of Canada: rci.rogers.com * SaskTel: sms.sasktel.com * Sprint: pm.sprint.com, messaging.sprintpcs.com * T-Mobile: tmomail.net, mmsreply.t-mobile.co.uk * TELUS Corporation (Canada): mms.telusmobility.com, msg.telus.com * Unicel: unicel.com, info2go.com (note: mobile number is tucked away in a text/plain part for unicel.com) * Verizon: vzwpix.com, vtext.com * Virgin Mobile: vmpix.com * Vodacom: mms.vodacom4me.co.za} s.email = %q{mikemondragon@gmail.com} s.extra_rdoc_files = ["History.txt", "Manifest.txt", "README.txt"] - s.files = [".gitignore", "History.txt", "Manifest.txt", "README.txt", "Rakefile", "conf/1nbox.net.yml", "conf/aliases.yml", "conf/bellsouth.net.yml", "conf/mediamessaging.o2.co.uk.yml", "conf/messaging.nextel.com.yml", "conf/mms.3ireland.ie.yml", "conf/mms.alltel.com.yml", "conf/mms.att.net.yml", "conf/mms.dobson.net.yml", "conf/mms.luxgsm.lu.yml", "conf/mms.mobileiam.ma.yml", "conf/mms.mtn.co.za.yml", "conf/mms.mycricket.com.yml", "conf/mms.myhelio.com.yml", "conf/mms.netcom.no.yml", "conf/mms.o2online.de.yml", "conf/mms.three.co.uk.yml", "conf/mms.vodacom4me.co.za.yml", "conf/mms2r_media.yml", "conf/mobile.indosat.net.id.yml", "conf/msg.telus.com.yml", "conf/orangemms.net.yml", "conf/pm.sprint.com.yml", "conf/pxt.vodafone.net.nz.yml", "conf/rci.rogers.com.yml", "conf/sms.sasktel.com.yml", "conf/tmomail.net.yml", "conf/txt.bell.ca.yml", "conf/unicel.com.yml", "conf/vmpix.com.yml", "conf/vzwpix.com.yml", "conf/waw.plspictures.com.yml", "dev_tools/anonymizer.rb", "dev_tools/debug_sprint_hpricot_parsing.rb", "dev_tools/github.rb", "lib/mms2r.rb", "lib/mms2r/media.rb", "lib/mms2r/media/sprint.rb", "lib/tmail_ext.rb", "mms2r.gemspec", "test/fixtures/1nbox-2images-01.mail", "test/fixtures/1nbox-2images-02.mail", "test/fixtures/1nbox-2images-03.mail", "test/fixtures/1nbox-2images-04.mail", "test/fixtures/3ireland-mms-01.mail", "test/fixtures/alltel-image-01.mail", "test/fixtures/alltel-mms-01.mail", "test/fixtures/alltel-mms-03.mail", "test/fixtures/apple-double-image-01.mail", "test/fixtures/att-blackberry-02.mail", "test/fixtures/att-blackberry.mail", "test/fixtures/att-image-01.mail", "test/fixtures/att-image-02.mail", "test/fixtures/att-iphone-01.mail", "test/fixtures/att-iphone-02.mail", "test/fixtures/att-iphone-03.mail", "test/fixtures/att-text-01.mail", "test/fixtures/bell-canada-image-01.mail", "test/fixtures/cingularme-text-01.mail", "test/fixtures/cingularme-text-02.mail", "test/fixtures/dobson-image-01.mail", "test/fixtures/dot.jpg", "test/fixtures/helio-image-01.mail", "test/fixtures/helio-message-01.mail", "test/fixtures/iconv-fr-text-01.mail", "test/fixtures/indosat-image-01.mail", "test/fixtures/indosat-image-02.mail", "test/fixtures/info2go-image-01.mail", "test/fixtures/luxgsm-image-01.mail", "test/fixtures/maroctelecom-france-mms-01.mail", "test/fixtures/mediamessaging_o2_co_uk-image-01.mail", "test/fixtures/mmode-image-01.mail", "test/fixtures/mms.mycricket.com-pic-and-text.mail", "test/fixtures/mms.mycricket.com-pic.mail", "test/fixtures/mmsreply.t-mobile.co.uk-text-image-01.mail", "test/fixtures/mtn-southafrica-mms.mail", "test/fixtures/mycingular-image-01.mail", "test/fixtures/netcom-image-01.mail", "test/fixtures/nextel-image-01.mail", "test/fixtures/nextel-image-02.mail", "test/fixtures/nextel-image-03.mail", "test/fixtures/nextel-image-04.mail", "test/fixtures/o2-de-image-01.mail", "test/fixtures/orange-uk-image-01.mail", "test/fixtures/orangefrance-text-and-image.mail", "test/fixtures/orangepoland-text-01.mail", "test/fixtures/orangepoland-text-02.mail", "test/fixtures/pxt-image-01.mail", "test/fixtures/rogers-canada-mms-01.mail", "test/fixtures/sasktel-image-01.mail", "test/fixtures/sprint-broken-image-01.mail", "test/fixtures/sprint-image-01.mail", "test/fixtures/sprint-pcs-text-01.mail", "test/fixtures/sprint-purged-image-01.mail", "test/fixtures/sprint-text-01.mail", "test/fixtures/sprint-two-images-01.mail", "test/fixtures/sprint-video-01.mail", "test/fixtures/sprint.mov", "test/fixtures/suncom-blackberry.mail", "test/fixtures/telus-image-01.mail", "test/fixtures/three-uk-image-01.mail", "test/fixtures/tmobile-blackberry-02.mail", "test/fixtures/tmobile-blackberry.mail", "test/fixtures/tmobile-image-01.mail", "test/fixtures/tmobile-image-02.mail", "test/fixtures/unicel-image-01.mail", "test/fixtures/verizon-blackberry.mail", "test/fixtures/verizon-image-01.mail", "test/fixtures/verizon-image-02.mail", "test/fixtures/verizon-image-03.mail", "test/fixtures/verizon-text-01.mail", "test/fixtures/verizon-video-01.mail", "test/fixtures/virgin-mobile-image-01.mail", "test/fixtures/vodacom4me-co-za-01.mail", "test/fixtures/vodacom4me-co-za-02.mail", "test/fixtures/vodacom4me-southafrica-mms-01.mail", "test/fixtures/vodacom4me-southafrica-mms-04.mail", "test/fixtures/vtext-text-01.mail", "test/fixtures/waw.plspictures.com-image-01.mail", "test/test_1nbox_net.rb", "test/test_bell_canada.rb", "test/test_bellsouth_net.rb", "test/test_github.rb", "test/test_helper.rb", "test/test_mediamessaging_o2_co_uk.rb", "test/test_messaging_nextel_com.rb", "test/test_messaging_sprintpcs_com.rb", "test/test_mms2r_media.rb", "test/test_mms_3ireland_ie.rb", "test/test_mms_alltel_com.rb", "test/test_mms_att_net.rb", "test/test_mms_dobson_net.rb", "test/test_mms_luxgsm_lu.rb", "test/test_mms_mobileiam_ma.rb", "test/test_mms_mtn_co_za.rb", "test/test_mms_mycricket_com.rb", "test/test_mms_myhelio_com.rb", "test/test_mms_netcom_no.rb", "test/test_mms_o2online_de.rb", "test/test_mms_three_co_uk.rb", "test/test_mms_vodacom4me_co_za.rb", "test/test_mobile_indosat_net_id.rb", "test/test_msg_telus_com.rb", "test/test_orangemms_net.rb", "test/test_pm_sprint_com.rb", "test/test_pxt_vodafone_net_nz.rb", "test/test_rci_rogers_com.rb", "test/test_sms_sasktel_com.rb", "test/test_tmomail_net.rb", "test/test_unicel_com.rb", "test/test_vmpix_com.rb", "test/test_vzwpix_com.rb", "test/test_waw_plspictures_com.rb", "vendor/plugins/mms2r/lib/autotest/discover.rb", "vendor/plugins/mms2r/lib/autotest/mms2r.rb"] + s.files = [".gitignore", "History.txt", "Manifest.txt", "README.txt", "Rakefile", "conf/1nbox.net.yml", "conf/aliases.yml", "conf/bellsouth.net.yml", "conf/mediamessaging.o2.co.uk.yml", "conf/messaging.nextel.com.yml", "conf/mms.3ireland.ie.yml", "conf/mms.ae.yml", "conf/mms.alltel.com.yml", "conf/mms.att.net.yml", "conf/mms.dobson.net.yml", "conf/mms.luxgsm.lu.yml", "conf/mms.mobileiam.ma.yml", "conf/mms.mtn.co.za.yml", "conf/mms.mycricket.com.yml", "conf/mms.myhelio.com.yml", "conf/mms.netcom.no.yml", "conf/mms.o2online.de.yml", "conf/mms.three.co.uk.yml", "conf/mms.vodacom4me.co.za.yml", "conf/mms2r_media.yml", "conf/mobile.indosat.net.id.yml", "conf/msg.telus.com.yml", "conf/orangemms.net.yml", "conf/pm.sprint.com.yml", "conf/pxt.vodafone.net.nz.yml", "conf/rci.rogers.com.yml", "conf/sms.sasktel.com.yml", "conf/tmomail.net.yml", "conf/txt.bell.ca.yml", "conf/unicel.com.yml", "conf/vmpix.com.yml", "conf/vzwpix.com.yml", "conf/waw.plspictures.com.yml", "dev_tools/anonymizer.rb", "dev_tools/debug_sprint_hpricot_parsing.rb", "dev_tools/github.rb", "lib/mms2r.rb", "lib/mms2r/media.rb", "lib/mms2r/media/sprint.rb", "lib/tmail_ext.rb", "mms2r.gemspec", "test/fixtures/1nbox-2images-01.mail", "test/fixtures/1nbox-2images-02.mail", "test/fixtures/1nbox-2images-03.mail", "test/fixtures/1nbox-2images-04.mail", "test/fixtures/3ireland-mms-01.mail", "test/fixtures/alltel-image-01.mail", "test/fixtures/alltel-mms-01.mail", "test/fixtures/alltel-mms-03.mail", "test/fixtures/apple-double-image-01.mail", "test/fixtures/att-blackberry-02.mail", "test/fixtures/att-blackberry.mail", "test/fixtures/att-image-01.mail", "test/fixtures/att-image-02.mail", "test/fixtures/att-iphone-01.mail", "test/fixtures/att-iphone-02.mail", "test/fixtures/att-iphone-03.mail", "test/fixtures/att-text-01.mail", "test/fixtures/bell-canada-image-01.mail", "test/fixtures/cingularme-text-01.mail", "test/fixtures/cingularme-text-02.mail", "test/fixtures/dobson-image-01.mail", "test/fixtures/dot.jpg", "test/fixtures/helio-image-01.mail", "test/fixtures/helio-message-01.mail", "test/fixtures/iconv-fr-text-01.mail", "test/fixtures/indosat-image-01.mail", "test/fixtures/indosat-image-02.mail", "test/fixtures/info2go-image-01.mail", "test/fixtures/luxgsm-image-01.mail", "test/fixtures/maroctelecom-france-mms-01.mail", "test/fixtures/mediamessaging_o2_co_uk-image-01.mail", "test/fixtures/mmode-image-01.mail", "test/fixtures/mms.ae-image-01.mail", "test/fixtures/mms.mycricket.com-pic-and-text.mail", "test/fixtures/mms.mycricket.com-pic.mail", "test/fixtures/mmsreply.t-mobile.co.uk-text-image-01.mail", "test/fixtures/mtn-southafrica-mms.mail", "test/fixtures/mycingular-image-01.mail", "test/fixtures/netcom-image-01.mail", "test/fixtures/nextel-image-01.mail", "test/fixtures/nextel-image-02.mail", "test/fixtures/nextel-image-03.mail", "test/fixtures/nextel-image-04.mail", "test/fixtures/o2-de-image-01.mail", "test/fixtures/orange-uk-image-01.mail", "test/fixtures/orangefrance-text-and-image.mail", "test/fixtures/orangepoland-text-01.mail", "test/fixtures/orangepoland-text-02.mail", "test/fixtures/pxt-image-01.mail", "test/fixtures/rogers-canada-mms-01.mail", "test/fixtures/sasktel-image-01.mail", "test/fixtures/sprint-broken-image-01.mail", "test/fixtures/sprint-image-01.mail", "test/fixtures/sprint-pcs-text-01.mail", "test/fixtures/sprint-purged-image-01.mail", "test/fixtures/sprint-text-01.mail", "test/fixtures/sprint-two-images-01.mail", "test/fixtures/sprint-video-01.mail", "test/fixtures/sprint.mov", "test/fixtures/suncom-blackberry.mail", "test/fixtures/telus-image-01.mail", "test/fixtures/three-uk-image-01.mail", "test/fixtures/tmobile-blackberry-02.mail", "test/fixtures/tmobile-blackberry.mail", "test/fixtures/tmobile-image-01.mail", "test/fixtures/tmobile-image-02.mail", "test/fixtures/unicel-image-01.mail", "test/fixtures/verizon-blackberry.mail", "test/fixtures/verizon-image-01.mail", "test/fixtures/verizon-image-02.mail", "test/fixtures/verizon-image-03.mail", "test/fixtures/verizon-text-01.mail", "test/fixtures/verizon-video-01.mail", "test/fixtures/virgin-mobile-image-01.mail", "test/fixtures/vodacom4me-co-za-01.mail", "test/fixtures/vodacom4me-co-za-02.mail", "test/fixtures/vodacom4me-southafrica-mms-01.mail", "test/fixtures/vodacom4me-southafrica-mms-04.mail", "test/fixtures/vtext-text-01.mail", "test/fixtures/waw.plspictures.com-image-01.mail", "test/test_1nbox_net.rb", "test/test_bell_canada.rb", "test/test_bellsouth_net.rb", "test/test_github.rb", "test/test_helper.rb", "test/test_mediamessaging_o2_co_uk.rb", "test/test_messaging_nextel_com.rb", "test/test_messaging_sprintpcs_com.rb", "test/test_mms2r_media.rb", "test/test_mms_3ireland_ie.rb", "test/test_mms_ae.rb", "test/test_mms_alltel_com.rb", "test/test_mms_att_net.rb", "test/test_mms_dobson_net.rb", "test/test_mms_luxgsm_lu.rb", "test/test_mms_mobileiam_ma.rb", "test/test_mms_mtn_co_za.rb", "test/test_mms_mycricket_com.rb", "test/test_mms_myhelio_com.rb", "test/test_mms_netcom_no.rb", "test/test_mms_o2online_de.rb", "test/test_mms_three_co_uk.rb", "test/test_mms_vodacom4me_co_za.rb", "test/test_mobile_indosat_net_id.rb", "test/test_msg_telus_com.rb", "test/test_orangemms_net.rb", "test/test_pm_sprint_com.rb", "test/test_pxt_vodafone_net_nz.rb", "test/test_rci_rogers_com.rb", "test/test_sms_sasktel_com.rb", "test/test_tmomail_net.rb", "test/test_unicel_com.rb", "test/test_vmpix_com.rb", "test/test_vzwpix_com.rb", "test/test_waw_plspictures_com.rb", "vendor/plugins/mms2r/lib/autotest/discover.rb", "vendor/plugins/mms2r/lib/autotest/mms2r.rb"] s.has_rdoc = true s.homepage = %q{by Mike Mondragon } @@ -17,7 +17,7 @@ Gem::Specification.new do |s| s.rubyforge_project = %q{mms2r} s.rubygems_version = %q{1.2.0} s.summary = %q{Extract user media from MMS (and not carrier cruft)} - s.test_files = ["test/test_sms_sasktel_com.rb", "test/test_pxt_vodafone_net_nz.rb", "test/test_mms_mycricket_com.rb", "test/test_mobile_indosat_net_id.rb", "test/test_unicel_com.rb", "test/test_pm_sprint_com.rb", "test/test_messaging_sprintpcs_com.rb", "test/test_vzwpix_com.rb", "test/test_mms_alltel_com.rb", "test/test_mms2r_media.rb", "test/test_waw_plspictures_com.rb", "test/test_mms_3ireland_ie.rb", "test/test_msg_telus_com.rb", "test/test_bellsouth_net.rb", "test/test_mms_o2online_de.rb", "test/test_mms_att_net.rb", "test/test_mms_netcom_no.rb", "test/test_rci_rogers_com.rb", "test/test_mms_mtn_co_za.rb", "test/test_tmomail_net.rb", "test/test_mms_myhelio_com.rb", "test/test_mms_three_co_uk.rb", "test/test_mms_dobson_net.rb", "test/test_mms_luxgsm_lu.rb", "test/test_bell_canada.rb", "test/test_github.rb", "test/test_orangemms_net.rb", "test/test_helper.rb", "test/test_vmpix_com.rb", "test/test_mms_mobileiam_ma.rb", "test/test_messaging_nextel_com.rb", "test/test_mediamessaging_o2_co_uk.rb", "test/test_1nbox_net.rb", "test/test_mms_vodacom4me_co_za.rb"] + s.test_files = ["test/test_sms_sasktel_com.rb", "test/test_pxt_vodafone_net_nz.rb", "test/test_mms_mycricket_com.rb", "test/test_mobile_indosat_net_id.rb", "test/test_unicel_com.rb", "test/test_pm_sprint_com.rb", "test/test_messaging_sprintpcs_com.rb", "test/test_vzwpix_com.rb", "test/test_mms_alltel_com.rb", "test/test_mms2r_media.rb", "test/test_waw_plspictures_com.rb", "test/test_mms_ae.rb", "test/test_mms_3ireland_ie.rb", "test/test_msg_telus_com.rb", "test/test_bellsouth_net.rb", "test/test_mms_o2online_de.rb", "test/test_mms_att_net.rb", "test/test_mms_netcom_no.rb", "test/test_rci_rogers_com.rb", "test/test_mms_mtn_co_za.rb", "test/test_tmomail_net.rb", "test/test_mms_myhelio_com.rb", "test/test_mms_three_co_uk.rb", "test/test_mms_dobson_net.rb", "test/test_mms_luxgsm_lu.rb", "test/test_bell_canada.rb", "test/test_github.rb", "test/test_orangemms_net.rb", "test/test_helper.rb", "test/test_vmpix_com.rb", "test/test_mms_mobileiam_ma.rb", "test/test_messaging_nextel_com.rb", "test/test_mediamessaging_o2_co_uk.rb", "test/test_1nbox_net.rb", "test/test_mms_vodacom4me_co_za.rb"] if s.respond_to? :specification_version then current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION @@ -26,15 +26,15 @@ Gem::Specification.new do |s| if current_version >= 3 then s.add_runtime_dependency(%q, [">= 0.6.0"]) s.add_runtime_dependency(%q, [">= 1.2.1"]) - s.add_development_dependency(%q, [">= 1.7.0"]) + s.add_development_dependency(%q, [">= 1.8.2"]) else s.add_dependency(%q, [">= 0.6.0"]) s.add_dependency(%q, [">= 1.2.1"]) - s.add_dependency(%q, [">= 1.7.0"]) + s.add_dependency(%q, [">= 1.8.2"]) end else s.add_dependency(%q, [">= 0.6.0"]) s.add_dependency(%q, [">= 1.2.1"]) - s.add_dependency(%q, [">= 1.7.0"]) + s.add_dependency(%q, [">= 1.8.2"]) end end diff --git a/test/fixtures/mms.ae-image-01.mail b/test/fixtures/mms.ae-image-01.mail new file mode 100644 index 0000000..bac65c5 --- /dev/null +++ b/test/fixtures/mms.ae-image-01.mail @@ -0,0 +1,45 @@ +Delivered-To: tommy.tutone@example.com +Received: by 10.150.52.17 with SMTP id z17cs418249ybz; + Sun, 19 Oct 2008 08:25:15 -0700 (PDT) +Received: by 10.67.116.8 with SMTP id t8mr1482898ugm.57.1224429913824; + Sun, 19 Oct 2008 08:25:13 -0700 (PDT) +Return-Path: <+2068675309@mms.ae> +Received: from domail2.emirates.net.ae (domail2.emirates.net.ae [213.42.1.94]) + by mx.google.com with ESMTP id k27si2760421ugd.20.2008.10.19.08.25.12; + Sun, 19 Oct 2008 08:25:13 -0700 (PDT) +Received-SPF: softfail (google.com: domain of transitioning +2068675309@mms.ae does not designate 213.42.1.94 as permitted sender) client-ip=213.42.1.94; +Authentication-Results: mx.google.com; spf=softfail (google.com: domain of transitioning +2068675309@mms.ae does not designate 213.42.1.94 as permitted sender) smtp.mail=+2068675309@mms.ae +MIME-version: 1.0 +Content-type: multipart/mixed; boundary="Boundary_(ID_p5dJ87KpgxrrG0Dfvu/kYQ)" +Received: from dpmail4.emirates.net.ae ([213.42.3.217]) + by domail2.emirates.net.ae (I&ES Mail Server 4.2) + with ESMTP id <0K8Z00MO0S48DH00@domail2.emirates.net.ae> for + tommy.tutone@example.com; Sun, 19 Oct 2008 19:24:08 +0400 (GST) +Received: from mms.ae ([195.229.243.167]) by dpmail4.emirates.net.ae + (I&ES Mail Server 4.2) with SMTP id <0K8Z00L51ASLJ320@dpmail4.emirates.net.ae> + for tommy.tutone@example.com; Sun, 19 Oct 2008 19:24:24 +0400 (GST) +Date: Sun, 19 Oct 2008 19:24:24 +0400 (GMT) +From: +2068675309@mms.ae +To: tommy.tutone@example.com +Message-id: <48FB5115.006B87.11159@mmrl02> +X-Mailer: HUAWEI EmailGateway 1.0 +X-Mms-Message-ID: 101919242497100101339 +X-Mms-Message-Class: Personal +X-Mms-Priority: Normal + + +--Boundary_(ID_p5dJ87KpgxrrG0Dfvu/kYQ) +Content-type: image/jpeg; name=19102008.jpg +Content-transfer-encoding: Base64 +Content-disposition: inline; filename=19102008.jpg +Content-Location: 19102008.jpg + +/9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD//gAXQ3JlYXRl +ZCB3aXRoIFRoZSBHSU1Q/9sAQwAFAwQEBAMFBAQEBQUFBgcMCAcHBwcPCwsJDBEPEhIRDxER +ExYcFxMUGhURERghGBodHR8fHxMXIiQiHiQcHh8e/9sAQwEFBQUHBgcOCAgOHhQRFB4eHh4e +Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e/8AAEQgAAQAB +AwEiAAIRAQMRAf/EABUAAQEAAAAAAAAAAAAAAAAAAAAH/8QAFBABAAAAAAAAAAAAAAAAAAAA +AP/EABUBAQEAAAAAAAAAAAAAAAAAAAcI/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQAC +EQMRAD8AlgA6WW//2Q== + +--Boundary_(ID_p5dJ87KpgxrrG0Dfvu/kYQ)-- diff --git a/test/test_mms_ae.rb b/test/test_mms_ae.rb new file mode 100644 index 0000000..58a5ff3 --- /dev/null +++ b/test/test_mms_ae.rb @@ -0,0 +1,46 @@ +require File.join(File.dirname(__FILE__), "..", "lib", "mms2r") +require File.join(File.dirname(__FILE__), "test_helper") +require 'test/unit' +require 'rubygems' +require 'mocha' +gem 'tmail', '>= 1.2.1' +require 'tmail' + +class TestMmsAe < Test::Unit::TestCase + include MMS2R::TestHelper + + def test_only_valid_content_should_be_retained_for_mms_with_image_and_text + mail = TMail::Mail.parse(load_mail('mms.ae-image-01.mail').join) + mms = MMS2R::Media.new(mail) + assert_equal 1, mms.media.size + assert_equal 1, mms.media['image/jpeg'].size + assert_file_size(mms.media['image/jpeg'].first, 337) + assert_match(/19102008.jpg$/, mms.media['image/jpeg'].first) + mms.purge + end + + def test_number_should_return_correct_number + mail = TMail::Mail.parse(load_mail('mms.ae-image-01.mail').join) + mms = MMS2R::Media.new(mail) + number = mms.number() + assert_equal number, "+2068675309" + mms.purge + end + + def test_subject_should_return_correct_subject + mail = TMail::Mail.parse(load_mail('mms.ae-image-01.mail').join) + mms = MMS2R::Media.new(mail) + assert_equal "", mms.subject + mms.purge + end + + def test_attachment_should_return_jpeg + mail = TMail::Mail.parse(load_mail('mms.ae-image-01.mail').join) + mms = MMS2R::Media.new(mail) + image = mms.default_media + assert_equal 337, image.size + assert_equal "19102008.jpg", image.original_filename + mms.purge + end + +end