mms2r 2.4.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. data/.gitignore +1 -0
  2. data/History.txt +5 -0
  3. data/Manifest.txt +1 -1
  4. data/README.txt +12 -9
  5. data/Rakefile +11 -10
  6. data/conf/mobile.indosat.net.id.yml +1 -1
  7. data/conf/waw.plspictures.com.yml +1 -1
  8. data/lib/mail_ext.rb +37 -0
  9. data/lib/mms2r.rb +7 -5
  10. data/lib/mms2r/media.rb +29 -35
  11. data/lib/mms2r/media/sprint.rb +19 -19
  12. data/mms2r.gemspec +23 -17
  13. data/test/fixtures/att-blackberry-02.mail +5 -6
  14. data/test/fixtures/att-iphone-01.mail +3 -3
  15. data/test/fixtures/dobson-image-01.mail +3 -3
  16. data/test/fixtures/maroctelecom-france-mms-01.mail +4 -4
  17. data/test/fixtures/mycingular-image-01.mail +3 -3
  18. data/test/fixtures/nextel-image-02.mail +2 -2
  19. data/test/fixtures/orangepoland-text-01.mail +2 -1
  20. data/test/fixtures/orangepoland-text-02.mail +2 -1
  21. data/test/fixtures/pics.cingularme.com-image-01.mail +0 -1
  22. data/test/fixtures/sasktel-image-01.mail +4 -4
  23. data/test/fixtures/sprint-broken-image-01.mail +1 -1
  24. data/test/fixtures/sprint-text-01.mail +1 -1
  25. data/test/fixtures/tmobile-blackberry-02.mail +4 -4
  26. data/test/test_1nbox_net.rb +16 -19
  27. data/test/test_bell_canada.rb +8 -13
  28. data/test/test_bellsouth_net.rb +5 -10
  29. data/test/test_helper.rb +16 -11
  30. data/test/test_mediamessaging_o2_co_uk.rb +21 -17
  31. data/test/test_messaging_nextel_com.rb +18 -12
  32. data/test/test_messaging_sprintpcs_com.rb +4 -8
  33. data/test/test_mms2r_media.rb +153 -143
  34. data/test/test_mms_3ireland_ie.rb +4 -9
  35. data/test/test_mms_ae.rb +12 -12
  36. data/test/test_mms_alltel_com.rb +14 -15
  37. data/test/test_mms_att_net.rb +35 -27
  38. data/test/test_mms_dobson_net.rb +9 -11
  39. data/test/test_mms_luxgsm_lu.rb +23 -17
  40. data/test/test_mms_mobileiam_ma.rb +4 -10
  41. data/test/test_mms_mtn_co_za.rb +4 -9
  42. data/test/test_mms_mycricket_com.rb +9 -9
  43. data/test/test_mms_myhelio_com.rb +18 -14
  44. data/test/test_mms_netcom_no.rb +19 -17
  45. data/test/test_mms_o2online_de.rb +20 -18
  46. data/test/test_mms_three_co_uk.rb +14 -14
  47. data/test/test_mms_vodacom4me_co_za.rb +24 -24
  48. data/test/test_mobile_indosat_net_id.rb +6 -9
  49. data/test/test_msg_telus_com.rb +5 -10
  50. data/test/test_orangemms_net.rb +25 -17
  51. data/test/test_pm_sprint_com.rb +37 -22
  52. data/test/test_pxt_vodafone_net_nz.rb +7 -11
  53. data/test/test_rci_rogers_com.rb +3 -8
  54. data/test/test_sms_sasktel_com.rb +2 -7
  55. data/test/test_tmomail_net.rb +25 -23
  56. data/test/test_unicel_com.rb +8 -12
  57. data/test/test_vmpix_com.rb +14 -13
  58. data/test/test_vzwpix_com.rb +24 -14
  59. data/test/test_waw_plspictures_com.rb +2 -7
  60. metadata +77 -26
  61. data/lib/tmail_ext.rb +0 -22
@@ -1,27 +1,22 @@
1
- require File.join(File.dirname(__FILE__), "..", "lib", "mms2r")
2
1
  require File.join(File.dirname(__FILE__), "test_helper")
3
- require 'test/unit'
4
- require 'rubygems'
5
- require 'mocha'
6
- gem 'tmail', '>= 1.2.1'
7
- require 'tmail'
8
2
 
9
3
  class TestUnicelCom < Test::Unit::TestCase
10
4
  include MMS2R::TestHelper
11
5
 
12
6
  def test_subject_number_image_unicel
13
- mail = TMail::Mail.parse(load_mail('unicel-image-01.mail').join)
7
+ mail = mail('unicel-image-01.mail')
14
8
  mms = MMS2R::Media.new(mail)
9
+ assert_equal "joeexample", mms.number
10
+ assert_equal "unicel.com", mms.carrier
15
11
 
16
12
  assert_equal "", mms.subject
17
- # assert_equal "1234567890", mms.number
18
13
 
19
14
  assert_equal 2, mms.media.size
20
15
  assert_equal 1, mms.media['text/plain'].size
21
16
  assert_equal 1, mms.media['image/jpeg'].size
22
17
 
23
18
  image = mms.media['image/jpeg'].detect{|f| /moto_0002\.jpg/ =~ f}
24
- assert_equal 337, File.size(image)
19
+ assert_equal 337, File.size(image)
25
20
 
26
21
  file = mms.media['text/plain'][0]
27
22
  text = IO.readlines("#{file}").join
@@ -31,19 +26,20 @@ class TestUnicelCom < Test::Unit::TestCase
31
26
  end
32
27
 
33
28
  def test_subject_number_image_info2go
34
- mail = TMail::Mail.parse(load_mail('info2go-image-01.mail').join)
29
+ mail = mail('info2go-image-01.mail')
35
30
  mms = MMS2R::Media.new(mail)
36
31
 
37
32
  assert_equal "", mms.subject
38
33
  assert_equal "2068675309", mms.number
34
+ assert_equal "info2go.com", mms.carrier
39
35
 
40
36
  assert_equal 1, mms.media.size
41
37
  assert_equal 1, mms.media['image/jpeg'].size
42
38
 
43
39
  image = mms.media['image/jpeg'].detect{|f| /Image047\.jpeg/ =~ f}
44
- assert_equal 337, File.size(image)
40
+ assert_equal 337, File.size(image)
45
41
 
46
42
  mms.purge
47
43
  end
48
-
44
+
49
45
  end
@@ -1,17 +1,13 @@
1
- require File.join(File.dirname(__FILE__), "..", "lib", "mms2r")
2
1
  require File.join(File.dirname(__FILE__), "test_helper")
3
- require 'test/unit'
4
- require 'rubygems'
5
- require 'mocha'
6
- gem 'tmail', '>= 1.2.1'
7
- require 'tmail'
8
2
 
9
3
  class TestVmpixCom < Test::Unit::TestCase
10
4
  include MMS2R::TestHelper
11
5
 
12
6
  def test_only_valid_content_should_be_retained_for_mms_with_image_and_text
13
- mail = TMail::Mail.parse(load_mail('virgin-mobile-image-01.mail').join)
7
+ mail = mail('virgin-mobile-image-01.mail')
14
8
  mms = MMS2R::Media.new(mail)
9
+ assert_equal "2068675309", mms.number
10
+ assert_equal "vmpix.com", mms.carrier
15
11
  assert_equal 1, mms.media.size
16
12
  assert_equal 1, mms.media['image/jpeg'].size
17
13
  assert_file_size(mms.media['image/jpeg'].first, 337)
@@ -20,23 +16,27 @@ class TestVmpixCom < Test::Unit::TestCase
20
16
  end
21
17
 
22
18
  def test_number_should_return_correct_number
23
- mail = TMail::Mail.parse(load_mail('virgin-mobile-image-01.mail').join)
19
+ mail = mail('virgin-mobile-image-01.mail')
24
20
  mms = MMS2R::Media.new(mail)
25
- number = mms.number()
26
- assert_equal number, 2068675309.to_s
21
+ assert_equal "2068675309", mms.number
22
+ assert_equal "vmpix.com", mms.carrier
27
23
  mms.purge
28
24
  end
29
25
 
30
26
  def test_subject_should_return_correct_subject
31
- mail = TMail::Mail.parse(load_mail('virgin-mobile-image-01.mail').join)
27
+ mail = mail('virgin-mobile-image-01.mail')
32
28
  mms = MMS2R::Media.new(mail)
29
+ assert_equal "2068675309", mms.number
30
+ assert_equal "vmpix.com", mms.carrier
33
31
  assert_equal "Jani sleepy", mms.subject
34
32
  mms.purge
35
33
  end
36
34
 
37
35
  def test_attachment_should_return_jpeg
38
- mail = TMail::Mail.parse(load_mail('virgin-mobile-image-01.mail').join)
36
+ mail = mail('virgin-mobile-image-01.mail')
39
37
  mms = MMS2R::Media.new(mail)
38
+ assert_equal "2068675309", mms.number
39
+ assert_equal "vmpix.com", mms.carrier
40
40
  image = mms.default_media
41
41
  assert_equal 337, image.size
42
42
  assert_equal "pic100508_3.jpg", image.original_filename
@@ -44,8 +44,9 @@ class TestVmpixCom < Test::Unit::TestCase
44
44
  end
45
45
 
46
46
  def test_only_valid_content_should_be_retained_for_virgin_canada_text
47
- mail = TMail::Mail.parse(load_mail('virgin.ca-text-01.mail').join)
47
+ mail = mail('virgin.ca-text-01.mail')
48
48
  mms = MMS2R::Media.new(mail)
49
+ assert_equal "2068675309", mms.number
49
50
  assert_equal 'vmobile.ca', mms.carrier
50
51
  assert_equal 1, mms.media.size
51
52
  assert_equal 1, mms.media['text/plain'].size
@@ -1,10 +1,4 @@
1
- require File.join(File.dirname(__FILE__), "..", "lib", "mms2r")
2
1
  require File.join(File.dirname(__FILE__), "test_helper")
3
- require 'test/unit'
4
- require 'rubygems'
5
- require 'mocha'
6
- gem 'tmail', '>= 1.2.1'
7
- require 'tmail'
8
2
 
9
3
  class TestVzwpixCom < Test::Unit::TestCase
10
4
  include MMS2R::TestHelper
@@ -24,8 +18,10 @@ www.verizonwireless.com/getitnow/getpix.}
24
18
 
25
19
  def test_simple_video
26
20
  # vzwpix.com service
27
- mail = TMail::Mail.parse(load_mail('verizon-video-01.mail').join)
21
+ mail = mail('verizon-video-01.mail')
28
22
  mms = MMS2R::Media.new(mail)
23
+ assert_equal "2068675309", mms.number
24
+ assert_equal 'vzwpix.com', mms.carrier
29
25
 
30
26
  assert_equal 1, mms.media.size
31
27
  assert_nil mms.media['text/plain']
@@ -40,8 +36,10 @@ www.verizonwireless.com/getitnow/getpix.}
40
36
 
41
37
  def test_simple_image
42
38
  # vzwpix.com service
43
- mail = TMail::Mail.parse(load_mail('verizon-image-01.mail').join)
39
+ mail = mail('verizon-image-01.mail')
44
40
  mms = MMS2R::Media.new(mail)
41
+ assert_equal "2068675309", mms.number
42
+ assert_equal 'vzwpix.com', mms.carrier
45
43
 
46
44
  assert_equal 1, mms.media.size
47
45
  assert_nil mms.media['text/plain']
@@ -56,8 +54,10 @@ www.verizonwireless.com/getitnow/getpix.}
56
54
 
57
55
  def test_simple_image_new_message_april_2008
58
56
  # vzwpix.com service
59
- mail = TMail::Mail.parse(load_mail('verizon-image-03.mail').join)
57
+ mail = mail('verizon-image-03.mail')
60
58
  mms = MMS2R::Media.new(mail)
59
+ assert_equal "2068675309", mms.number
60
+ assert_equal 'vzwpix.com', mms.carrier
61
61
 
62
62
  assert_equal 1, mms.media.size
63
63
  assert_nil mms.media['text/plain']
@@ -72,8 +72,10 @@ www.verizonwireless.com/getitnow/getpix.}
72
72
 
73
73
  def test_simple_text
74
74
  # vzwpix.com service
75
- mail = TMail::Mail.parse(load_mail('verizon-text-01.mail').join)
75
+ mail = mail('verizon-text-01.mail')
76
76
  mms = MMS2R::Media.new(mail)
77
+ assert_equal "2068675309", mms.number
78
+ assert_equal 'vzwpix.com', mms.carrier
77
79
 
78
80
  assert_equal 1, mms.media.size
79
81
  assert_not_nil mms.media['text/plain']
@@ -88,8 +90,10 @@ www.verizonwireless.com/getitnow/getpix.}
88
90
 
89
91
  def test_image_with_body_text
90
92
  # vzwpix.com service
91
- mail = TMail::Mail.parse(load_mail('verizon-image-02.mail').join)
93
+ mail = mail('verizon-image-02.mail')
92
94
  mms = MMS2R::Media.new(mail)
95
+ assert_equal "7018675309", mms.number
96
+ assert_equal 'vzwpix.com', mms.carrier
93
97
 
94
98
  assert_equal 2, mms.media.size
95
99
  assert_not_nil mms.media['text/plain']
@@ -112,8 +116,10 @@ www.verizonwireless.com/getitnow/getpix.}
112
116
 
113
117
  def test_new_vzpix_com_image_with_body_text
114
118
  # vzwpix.com service
115
- mail = TMail::Mail.parse(load_mail('vzwpix.com-image-01.mail').join)
119
+ mail = mail('vzwpix.com-image-01.mail')
116
120
  mms = MMS2R::Media.new(mail)
121
+ assert_equal "2068675309", mms.number
122
+ assert_equal 'vzwpix.com', mms.carrier
117
123
 
118
124
  assert_equal 1, mms.media.size
119
125
  assert_nil mms.media['text/plain']
@@ -128,8 +134,10 @@ www.verizonwireless.com/getitnow/getpix.}
128
134
 
129
135
  def test_simple_text_vtext
130
136
  # vtext.com service
131
- mail = TMail::Mail.parse(load_mail('vtext-text-01.mail').join)
137
+ mail = mail('vtext-text-01.mail')
132
138
  mms = MMS2R::Media.new(mail)
139
+ assert_equal "2068675309", mms.number
140
+ assert_equal 'vtext.com', mms.carrier
133
141
 
134
142
  assert_not_nil mms.media['text/plain']
135
143
  file = mms.media['text/plain'][0]
@@ -141,8 +149,10 @@ www.verizonwireless.com/getitnow/getpix.}
141
149
  end
142
150
 
143
151
  def test_image_from_blackberry
144
- mail = TMail::Mail.parse(load_mail('verizon-blackberry.mail').join)
152
+ mail = mail('verizon-blackberry.mail')
145
153
  mms = MMS2R::Media.new(mail)
154
+ assert_equal "2068675309", mms.number
155
+ assert_equal 'yahoo.com', mms.carrier
146
156
 
147
157
  assert_not_nil mms.media['text/plain']
148
158
  assert_equal "Wonderful picture!", IO.readlines(mms.media['text/plain'].first).join.strip
@@ -1,17 +1,12 @@
1
- require File.join(File.dirname(__FILE__), "..", "lib", "mms2r")
2
1
  require File.join(File.dirname(__FILE__), "test_helper")
3
- require 'test/unit'
4
- require 'rubygems'
5
- require 'mocha'
6
- gem 'tmail', '>= 1.2.1'
7
- require 'tmail'
8
2
 
9
3
  class TestWawPlspicturesCom < Test::Unit::TestCase
10
4
  include MMS2R::TestHelper
11
5
 
12
6
  def test_www_plspictures_com
13
- mail = TMail::Mail.parse(load_mail('waw.plspictures.com-image-01.mail').join)
7
+ mail = mail('waw.plspictures.com-image-01.mail')
14
8
  mms = MMS2R::Media.new(mail)
9
+ assert_equal "2068675309", mms.number
15
10
  assert_equal "waw.plspictures.com", mms.carrier
16
11
  assert_equal "", mms.subject
17
12
  assert_nil mms.media['text/html']
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mms2r
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.1
4
+ prerelease: false
5
+ segments:
6
+ - 3
7
+ - 0
8
+ - 0
9
+ version: 3.0.0
5
10
  platform: ruby
6
11
  authors:
7
12
  - Mike Mondragon
@@ -9,49 +14,93 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-02-07 00:00:00 -08:00
17
+ date: 2010-02-26 00:00:00 -08:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: nokogiri
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
23
- version: "0"
24
- version:
25
- - !ruby/object:Gem::Dependency
26
- name: tmail
27
+ segments:
28
+ - 1
29
+ - 4
30
+ - 0
31
+ version: 1.4.0
27
32
  type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: mail
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
30
38
  requirements:
31
39
  - - ">="
32
40
  - !ruby/object:Gem::Version
33
- version: "0"
34
- version:
41
+ segments:
42
+ - 2
43
+ - 1
44
+ - 0
45
+ version: 2.1.0
46
+ type: :runtime
47
+ version_requirements: *id002
35
48
  - !ruby/object:Gem::Dependency
36
49
  name: uuidtools
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 2
57
+ - 1
58
+ - 0
59
+ version: 2.1.0
37
60
  type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: rubyforge
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
40
66
  requirements:
41
67
  - - ">="
42
68
  - !ruby/object:Gem::Version
43
- version: "0"
44
- version:
69
+ segments:
70
+ - 2
71
+ - 0
72
+ - 3
73
+ version: 2.0.3
74
+ type: :development
75
+ version_requirements: *id004
45
76
  - !ruby/object:Gem::Dependency
46
- name: hoe
77
+ name: gemcutter
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ segments:
84
+ - 0
85
+ - 4
86
+ - 1
87
+ version: 0.4.1
47
88
  type: :development
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
89
+ version_requirements: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ name: hoe
92
+ prerelease: false
93
+ requirement: &id006 !ruby/object:Gem::Requirement
50
94
  requirements:
51
95
  - - ">="
52
96
  - !ruby/object:Gem::Version
53
- version: 2.4.0
54
- version:
97
+ segments:
98
+ - 2
99
+ - 5
100
+ - 0
101
+ version: 2.5.0
102
+ type: :development
103
+ version_requirements: *id006
55
104
  description: |-
56
105
  == DESCRIPTION
57
106
 
@@ -123,7 +172,7 @@ files:
123
172
  - lib/mms2r.rb
124
173
  - lib/mms2r/media.rb
125
174
  - lib/mms2r/media/sprint.rb
126
- - lib/tmail_ext.rb
175
+ - lib/mail_ext.rb
127
176
  - mms2r.gemspec
128
177
  - test/fixtures/1nbox-2images-01.mail
129
178
  - test/fixtures/1nbox-2images-02.mail
@@ -265,18 +314,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
265
314
  requirements:
266
315
  - - ">="
267
316
  - !ruby/object:Gem::Version
317
+ segments:
318
+ - 0
268
319
  version: "0"
269
- version:
270
320
  required_rubygems_version: !ruby/object:Gem::Requirement
271
321
  requirements:
272
322
  - - ">="
273
323
  - !ruby/object:Gem::Version
324
+ segments:
325
+ - 0
274
326
  version: "0"
275
- version:
276
327
  requirements: []
277
328
 
278
329
  rubyforge_project: mms2r
279
- rubygems_version: 1.3.5
330
+ rubygems_version: 1.3.6
280
331
  signing_key:
281
332
  specification_version: 3
282
333
  summary: Extract user media from MMS (and not carrier cruft)
data/lib/tmail_ext.rb DELETED
@@ -1,22 +0,0 @@
1
- #--
2
- # Copyright (c) 2007-2010 by Mike Mondragon (mikemondragon@gmail.com)
3
- #
4
- # Please see the LICENSE file for licensing information.
5
- #++
6
-
7
- class TMail::MessageIdHeader #:nodoc:
8
- def real_body
9
- @body
10
- end
11
- end
12
-
13
- class TMail::Mail
14
-
15
- ##
16
- # Determines the mime-type of a part. Guarantees a type is returned.
17
-
18
- def part_type?
19
- self.content_type('text/plain')
20
- end
21
-
22
- end