mms2r 2.4.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
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