mms2r 1.1.10 → 1.1.11

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,9 +1,24 @@
1
+ == 1.1.11 / 2007-10-20 (Dr. Armand Skagerakk Frederickshaven)
2
+
3
+ * minor fix for attachment_fu where it might call #path on the cgi temp file
4
+ that is returned by get_attachment
5
+ * renamed a_t_t_media.rb to att_media.rb to make it autotest happy
6
+ * masthead.jpg misplaced in mms2r_t_mobile_media_ignore.yml (Layton Wedgeworth)
7
+ * overridden SprintMedia#process failed to accept block (Layton Wedgeworth)
8
+ * added method_deprecated to help mark methods that are going to be deprecated
9
+ in preparation of 1.2.x release
10
+ * #get_number marked deprecated, use #number instead
11
+ * #get_subject marked deprecated, use #subject instead
12
+ * #get_body marked deprecated, use #body instead
13
+ * #get_text marked deprecated, use #default_text instead
14
+ * #get_attachment marked deprecated, use #attachment instead
15
+ * #get_media marked deprecated, use #default_media instead
16
+
1
17
  == 1.1.10 / 2007-09-30 (Face Bones)
2
18
 
3
19
  * fixed a case for a nil match on From in the create method (Luke Francl)
4
20
  * added support for Alltel message.alltel.com (Ben Wood)
5
21
 
6
-
7
22
  == 1.1.9 / 2007-09-08 (Rebecca Nightrod - controlling girlfriend of Nathan
8
23
  Explosion)
9
24
 
data/Manifest.txt CHANGED
@@ -21,8 +21,8 @@ conf/mms2r_verizon_media_ignore.yml
21
21
  conf/mms2r_verizon_media_transform.yml
22
22
  dev_tools/debug_sprint_hpricot_parsing.rb
23
23
  lib/mms2r.rb
24
- lib/mms2r/a_t_t_media.rb
25
24
  lib/mms2r/alltel_media.rb
25
+ lib/mms2r/att_media.rb
26
26
  lib/mms2r/cingular_me_media.rb
27
27
  lib/mms2r/dobson_media.rb
28
28
  lib/mms2r/helio_media.rb
@@ -101,8 +101,8 @@ test/fixtures/verizon-text-01.mail
101
101
  test/fixtures/verizon-video-01.mail
102
102
  test/fixtures/vtext-text-01.mail
103
103
  test/test_helper.rb
104
- test/test_mms2r_a_t_t_media.rb
105
104
  test/test_mms2r_alltel_media.rb
105
+ test/test_mms2r_att_media.rb
106
106
  test/test_mms2r_cingular_me_media.rb
107
107
  test/test_mms2r_dobson_media.rb
108
108
  test/test_mms2r_helio_media.rb
data/README.txt CHANGED
@@ -36,7 +36,8 @@ Corpus of carriers currently processed by MMS2R:
36
36
 
37
37
  == FEATURES
38
38
 
39
- * get_media and get_text methods return a File that can be used in attachment_fu
39
+ * #default_media and #default_text methods return a File that can be used in
40
+ attachment_fu
40
41
 
41
42
  == SYNOPSIS:
42
43
 
@@ -58,18 +59,18 @@ Corpus of carriers currently processed by MMS2R:
58
59
  # writes the user generated media to disk in a temporary subdirectory
59
60
  mms.process
60
61
 
61
- puts "MMS has default carrier subject!" unless mms.get_subject
62
+ puts "MMS has default carrier subject!" unless mms.subject
62
63
 
63
64
  # access the senders phone number
64
- puts "MMS was from phone #{mms.get_number}"
65
+ puts "MMS was from phone #{mms.number}"
65
66
 
66
- # most MMS are either image or video, get_media will return the largest
67
+ # most MMS are either image or video, default_media will return the largest
67
68
  # (non-advertising) video or image found
68
- file = mms.get_media
69
+ file = mms.default_media
69
70
  puts "MMS had a media: #{file.inspect}" unless file.nil?
70
71
 
71
- # get_text return the largest (non-advertising) text found
72
- file = mms.get_text
72
+ # text return the largest (non-advertising) text found
73
+ file = mms.default_text
73
74
  puts "MMS had some text: #{file.inspect}" unless file.nil?
74
75
 
75
76
  # mms.media is a hash that is indexed by mime-type.
@@ -1,12 +1,13 @@
1
1
  ---
2
2
  text/html:
3
3
  - !ruby/regexp /^<html> <head> <title>T-Mobile</title>/
4
+ image/jpeg:
5
+ - masthead.jpg
4
6
  image/gif:
5
7
  - dottedline350.gif
6
8
  - dottedline600.gif
7
9
  - dottedLine_350.gif
8
10
  - dottedLine_600.gif
9
- - masthead.jpg
10
11
  - spacer.gif
11
12
  - video.gif
12
13
  - audio.gif
data/lib/mms2r.rb CHANGED
@@ -7,7 +7,7 @@
7
7
  $:.unshift(File.dirname(__FILE__) + "/vendor/")
8
8
  require 'mms2r/media'
9
9
  require 'mms2r/alltel_media'
10
- require 'mms2r/a_t_t_media'
10
+ require 'mms2r/att_media'
11
11
  require 'mms2r/cingular_me_media'
12
12
  require 'mms2r/dobson_media'
13
13
  require 'mms2r/helio_media'
@@ -33,7 +33,7 @@ module MMS2R
33
33
 
34
34
  CARRIER_CLASSES = {
35
35
  'message.alltel.com' => MMS2R::AlltelMedia,
36
- 'mms.att.net' => MMS2R::ATTMedia,
36
+ 'mms.att.net' => MMS2R::AttMedia,
37
37
  'cingularme.com' => MMS2R::CingularMeMedia,
38
38
  'mms.dobson.net' => MMS2R::DobsonMedia,
39
39
  'mms.myhelio.com' => MMS2R::HelioMedia,
@@ -67,7 +67,7 @@ module MMS2R
67
67
  ##
68
68
  # MMS2R Library version
69
69
 
70
- VERSION = '1.1.10'
70
+ VERSION = '1.1.11'
71
71
 
72
72
  end
73
73
 
@@ -8,6 +8,6 @@ module MMS2R
8
8
  # message can be the file name of the media attached
9
9
  # to the MMS or empty.
10
10
 
11
- class MMS2R::ATTMedia < MMS2R::Media
11
+ class MMS2R::AttMedia < MMS2R::Media
12
12
  end
13
13
  end
@@ -11,9 +11,8 @@ module MMS2R
11
11
  # in the markup.
12
12
 
13
13
  class MMS2R::HelioMedia < MMS2R::Media
14
- def get_body
15
- text = get_text()
16
- d = Hpricot(text)
14
+ def body
15
+ d = Hpricot(default_text())
17
16
  body = d.search("//table/tr[2]/td/table/tr/td/table/tr[6]/td").inner_html
18
17
  body
19
18
  end
data/lib/mms2r/media.rb CHANGED
@@ -111,17 +111,22 @@ module MMS2R
111
111
  # your application on your own. Most carriers are using the real
112
112
  # phone number as the username.
113
113
 
114
- def get_number
114
+ def number
115
115
  # override this method in a child if the number exists elsewhere (like Sprint)
116
116
  @number ||= /^([^@]+)@/.match(mail.from[0])[1]
117
117
  end
118
118
 
119
+ def get_number # :nodoc:
120
+ sclz.method_deprecated(:get_number, :number)
121
+ self.number
122
+ end
123
+
119
124
  ##
120
125
  # Filter some common place holder subjects from MMS messages and
121
126
  # return nil such that default carrier subjects can be pragmatically
122
127
  # ignored.
123
128
 
124
- def get_subject
129
+ def subject
125
130
 
126
131
  return @subject if @subject # we've already done the work
127
132
 
@@ -142,14 +147,19 @@ module MMS2R
142
147
  return @subject ||= nil if a.detect{|r| r.match(subject.strip)}
143
148
  return @subject ||= subject
144
149
  end
150
+
151
+ def get_subject # :nodoc:
152
+ sclz.method_deprecated(:get_subject, :subject)
153
+ self.subject
154
+ end
145
155
 
146
156
  # Convenience method that returns a string including all the text of the
147
157
  # first text/plain file found. Returns empty string if no body text
148
158
  # is found.
149
- def get_body
159
+ def body
150
160
  return @body if @body
151
161
 
152
- text_file = get_text
162
+ text_file = default_text
153
163
  if text_file.nil?
154
164
  return @body ||= nil
155
165
  end
@@ -157,6 +167,11 @@ module MMS2R
157
167
  return @body ||= IO.readlines(text_file.path).join.strip
158
168
  end
159
169
 
170
+ def get_body # :nodoc:
171
+ sclz.method_deprecated(:get_body, :body)
172
+ self.body
173
+ end
174
+
160
175
  # Returns a File with the most likely candidate for the user-submitted
161
176
  # media. Given that most MMS messages only have one file attached,
162
177
  # this will try to give you that file. First it looks for videos, then
@@ -166,8 +181,13 @@ module MMS2R
166
181
  #
167
182
  # Returns nil if there are not any video or image Files found.
168
183
 
169
- def get_media
170
- return @default_media ||= get_attachement(['video', 'image'])
184
+ def default_media
185
+ return @default_media ||= attachement(['video', 'image'])
186
+ end
187
+
188
+ def get_media # :nodoc:
189
+ sclz.method_deprecated(:get_media, :default_media)
190
+ self.default_media
171
191
  end
172
192
 
173
193
  # Returns a File with the most likely candidate that is text, or nil
@@ -177,8 +197,13 @@ module MMS2R
177
197
  #
178
198
  # Returns nil if there are not any text Files found
179
199
 
180
- def get_text
181
- return @default_text ||= get_attachement(['text'])
200
+ def default_text
201
+ return @default_text ||= attachement(['text'])
202
+ end
203
+
204
+ def get_text # :nodoc:
205
+ sclz.method_deprecated(:get_text, :default_text)
206
+ self.default_text
182
207
  end
183
208
 
184
209
  ##
@@ -535,10 +560,10 @@ module MMS2R
535
560
  private
536
561
 
537
562
  ##
538
- # used by get_media and get_text to return the biggest attachment type
563
+ # used by #default_media and #text to return the biggest attachment type
539
564
  # listed in the types array
540
565
 
541
- def get_attachement(types)
566
+ def attachement(types)
542
567
 
543
568
  # get all the files that are of the major types passed in
544
569
  files = Array.new
@@ -568,10 +593,13 @@ module MMS2R
568
593
  end
569
594
  end
570
595
 
596
+ return nil if file.nil?
597
+
571
598
  # These singleton methods implement the interface necessary to be used
572
599
  # as a drop-in replacement for files uploaded with CGI.rb.
573
600
  # This helps if you want to use the files with, for example,
574
601
  # attachment_fu.
602
+
575
603
  def file.local_path
576
604
  self.path
577
605
  end
@@ -592,6 +620,18 @@ module MMS2R
592
620
  file
593
621
  end
594
622
 
623
+ def get_attachement(types) # :nodoc:
624
+ sclz.method_deprecated(:get_attachment, :attachment)
625
+ self.attachement(types)
626
+ end
627
+
628
+ def self.method_deprecated(from, to) # :nodoc:
629
+ msg = "Method '#{from}' has been deprecated use method '#{to}'." +
630
+ "\nMethod '#{from}' will be removed in a future release"
631
+ @logger.error(msg) if @logger
632
+ $stderr.puts msg
633
+ end
634
+
595
635
  end
596
636
 
597
637
  end
@@ -52,6 +52,13 @@ module MMS2R
52
52
  sprint_process_text(doc)
53
53
  sprint_process_media(doc)
54
54
 
55
+ # when process acts upon a block
56
+ if block_given?
57
+ media.each do |k, v|
58
+ yield(k, v)
59
+ end
60
+ end
61
+
55
62
  end
56
63
 
57
64
  private
@@ -62,7 +69,7 @@ module MMS2R
62
69
  def sprint_phone_number(doc)
63
70
  c = doc.search("/html/head/comment()").last
64
71
  t = c.content.gsub(/\s+/m," ").strip
65
- #@number returned in parent's get_number
72
+ #@number returned in parent's #number
66
73
  @number = / name=&quot;MDN&quot;&gt;(\d+)&lt;/.match(t)[1]
67
74
  end
68
75
 
@@ -27,11 +27,11 @@ class MMS2R::AlltelMediaTest < Test::Unit::TestCase
27
27
  mms.purge
28
28
  end
29
29
 
30
- def test_get_media_should_return_user_generated_content
30
+ def test_default_media_should_return_user_generated_content
31
31
  mail = TMail::Mail.parse(load_mail('alltel-image-01.mail').join)
32
32
  mms = MMS2R::Media.create(mail)
33
33
  mms.process
34
- file = mms.get_media
34
+ file = mms.default_media
35
35
  assert_equal 'eastern sky.jpg', file.original_filename
36
36
  mms.purge
37
37
  end
@@ -7,7 +7,7 @@ require 'mms2r/media'
7
7
  require 'tmail/mail'
8
8
  require 'logger'
9
9
 
10
- class MMS2R::ATTMediaTest < Test::Unit::TestCase
10
+ class MMS2R::AttMediaTest < Test::Unit::TestCase
11
11
  include MMS2R::TestHelper
12
12
 
13
13
  def setup
@@ -21,7 +21,7 @@ class MMS2R::ATTMediaTest < Test::Unit::TestCase
21
21
  def test_simple
22
22
  mail = TMail::Mail.parse(load_mail('att-image-01.mail').join)
23
23
  mms = MMS2R::Media.create(mail)
24
- assert_equal(MMS2R::ATTMedia, mms.class, "expected a #{MMS2R::ATTMedia} and received a #{mms.class}")
24
+ assert_equal(MMS2R::AttMedia, mms.class, "expected a #{MMS2R::AttMedia} and received a #{mms.class}")
25
25
  mms.process
26
26
 
27
27
  assert(mms.media.size == 1)
@@ -37,7 +37,7 @@ class MMS2R::ATTMediaTest < Test::Unit::TestCase
37
37
  def test_subject
38
38
  mail = TMail::Mail.parse(load_mail('att-image-02.mail').join)
39
39
  mms = MMS2R::Media.create(mail)
40
- assert_equal(MMS2R::ATTMedia, mms.class, "expected a #{MMS2R::ATTMedia} and received a #{mms.class}")
40
+ assert_equal(MMS2R::AttMedia, mms.class, "expected a #{MMS2R::AttMedia} and received a #{mms.class}")
41
41
  mms.process
42
42
 
43
43
  assert(mms.media.size == 1)
@@ -48,7 +48,7 @@ class MMS2R::ATTMediaTest < Test::Unit::TestCase
48
48
 
49
49
  assert_file_size(mms.media['image/jpeg'][0], 337)
50
50
 
51
- assert_nil mms.get_subject
51
+ assert_nil mms.subject
52
52
  mms.purge
53
53
  end
54
54
  end
@@ -34,12 +34,12 @@ class MMS2R::DobsonMediaTest < Test::Unit::TestCase
34
34
  mms.purge
35
35
  end
36
36
 
37
- def test_get_body_should_return_user_text
37
+ def test_body_should_return_user_text
38
38
  mail = TMail::Mail.parse(load_mail('dobson-image-01.mail').join)
39
39
  mms = MMS2R::Media.create(mail)
40
40
  mms.process
41
41
 
42
- assert_equal 'Body', mms.get_body
42
+ assert_equal 'Body', mms.body
43
43
 
44
44
  mms.purge
45
45
  end
@@ -21,23 +21,23 @@ class MMS2R::HelioMediaTest < Test::Unit::TestCase
21
21
  assert_equal @mms.class, MMS2R::HelioMedia
22
22
  end
23
23
 
24
- def test_get_number_should_return_correct_number
25
- number = @mms.get_number()
24
+ def test_number_should_return_correct_number
25
+ number = @mms.number()
26
26
  assert_equal number, 7608070850.to_s
27
27
  end
28
28
 
29
- def test_get_subject_should_return_correct_subject
30
- title = @mms.get_subject()
29
+ def test_subject_should_return_correct_subject
30
+ title = @mms.subject()
31
31
  assert_equal title, "Test image"
32
32
  end
33
33
 
34
- def test_get_body_should_return_correct_body
35
- body = @mms.get_body()
34
+ def test_body_should_return_correct_body
35
+ body = @mms.body()
36
36
  assert_equal body, "Test image"
37
37
  end
38
38
 
39
- def test_get_attachment_should_return_jpeg
40
- image = @mms.get_media()
39
+ def test_attachment_should_return_jpeg
40
+ image = @mms.default_media()
41
41
  assert_not_nil @mms.media['image/jpeg'][0]
42
42
  assert_match(/0628070005.jpg$/, @mms.media['image/jpeg'][0])
43
43
  end
@@ -216,20 +216,20 @@ class MMS2R::MediaTest < Test::Unit::TestCase
216
216
  mms.purge
217
217
  end
218
218
 
219
- def test_mms_with_two_images_should_get_media_to_largest_file
219
+ def test_mms_with_two_images_should_default_media_to_largest_file
220
220
  mail = TMail::Mail.parse(load_mail('simple-with-two-images-two-texts.mail').join)
221
221
  mms = MMS2R::Media.create(mail)
222
222
  mms.process
223
- file = mms.get_media
223
+ file = mms.default_media
224
224
  assert_equal 'big.jpg', file.original_filename
225
225
  mms.purge
226
226
  end
227
227
 
228
- def test_mms_with_two_texts_should_get_text_to_largest_file
228
+ def test_mms_with_two_texts_should_text_to_largest_file
229
229
  mail = TMail::Mail.parse(load_mail('simple-with-two-images-two-texts.mail').join)
230
230
  mms = MMS2R::Media.create(mail)
231
231
  mms.process
232
- file = mms.get_text
232
+ file = mms.default_text
233
233
  assert_equal 'big.txt', file.original_filename
234
234
  mms.purge
235
235
  end
@@ -238,7 +238,7 @@ class MMS2R::MediaTest < Test::Unit::TestCase
238
238
  mail = TMail::Mail.parse(load_mail('hello_world_empty_text.mail').join)
239
239
  mms = MMS2R::Media.create(mail)
240
240
  mms.process
241
- assert_equal '2068675309', mms.get_number
241
+ assert_equal '2068675309', mms.number
242
242
  mms.purge
243
243
  end
244
244
 
@@ -339,7 +339,7 @@ class MMS2R::MediaTest < Test::Unit::TestCase
339
339
  assert MMS2R::Media.sub_type?(mail.parts[0]).eql?('gif')
340
340
  end
341
341
 
342
- def test_get_subject
342
+ def test_subject
343
343
  subjects = [nil, '', '(no subject)']
344
344
 
345
345
  mail = TMail::Mail.parse(load_mail('hello_world_mail_plain_no_content_type.mail').join)
@@ -347,26 +347,26 @@ class MMS2R::MediaTest < Test::Unit::TestCase
347
347
  mail.subject = s
348
348
  mms = MMS2R::Media.create(mail)
349
349
  mms.process
350
- assert_equal nil, mms.get_subject, "Default subject not scrubbed."
350
+ assert_equal nil, mms.subject, "Default subject not scrubbed."
351
351
  mms.purge
352
352
  end
353
353
 
354
354
  mail = TMail::Mail.parse(load_mail('hello_world_mail_plain_no_content_type.mail').join)
355
355
  mms = MMS2R::Media.create(mail)
356
356
  mms.process
357
- assert_equal 'text only', mms.get_subject
357
+ assert_equal 'text only', mms.subject
358
358
  mms.purge
359
359
  end
360
360
 
361
- def test_get_body
361
+ def test_body
362
362
  mail = TMail::Mail.parse(load_mail('hello_world_mail_plain_no_content_type.mail').join)
363
363
  mms = MMS2R::Media.create(mail)
364
364
  mms.process
365
- assert_equal 'hello world', mms.get_body
365
+ assert_equal 'hello world', mms.body
366
366
  mms.purge
367
367
  end
368
368
 
369
- def test_get_attachment_should_return_duck_typed_file
369
+ def test_attachment_should_return_duck_typed_file
370
370
 
371
371
  mail = TMail::Mail.parse(load_mail('simple_image.mail').join)
372
372
  mms = MMS2R::Media.create(mail)
@@ -382,10 +382,10 @@ class MMS2R::MediaTest < Test::Unit::TestCase
382
382
  assert File::exist?(test), "file #{test} does not exist"
383
383
  assert_equal base_name, File.basename(test), "file #{test} does not exist as #{base_name}"
384
384
 
385
- # get_media calls get_attachment and
386
- # get_attachment should return a file that has some duck sauce for
385
+ # default_media calls attachment and
386
+ # attachment should return a file that has some duck sauce for
387
387
  # act_as_attachment and attachment_fu
388
- file = mms.get_media
388
+ file = mms.default_media
389
389
  assert_not_nil file, "file #{file} does not exist"
390
390
  assert_equal test, file.local_path
391
391
  assert_equal base_name, file.original_filename
@@ -21,10 +21,10 @@ class MMS2R::MyCingularMediaTest < Test::Unit::TestCase
21
21
  assert_not_nil mms.media['image/jpeg'][0]
22
22
  assert_match(/04-18-07_1723.jpg$/, mms.media['image/jpeg'][0])
23
23
 
24
- assert_equal nil, mms.get_subject, "Default Cingular subject not stripped"
24
+ assert_equal nil, mms.subject, "Default Cingular subject not stripped"
25
25
  assert_file_size mms.media['image/jpeg'][0], 337
26
26
 
27
- assert_equal "Water", IO.readlines(mms.get_text.path).join
27
+ assert_equal "Water", IO.readlines(mms.default_text.path).join
28
28
 
29
29
  mms.purge
30
30
  end
@@ -10,22 +10,22 @@ require 'logger'
10
10
  class MMS2R::NextelMediaTest < Test::Unit::TestCase
11
11
  include MMS2R::TestHelper
12
12
 
13
- def test_simple_get_text_is_nil
13
+ def test_simple_text_is_nil
14
14
  mail = TMail::Mail.parse(load_mail('nextel-image-01.mail').join)
15
15
  mms = MMS2R::Media.create(mail)
16
16
  mms.process
17
17
 
18
- assert_nil mms.get_text
18
+ assert_nil mms.default_text
19
19
 
20
20
  mms.purge
21
21
  end
22
22
 
23
- def test_simple_get_media
23
+ def test_simple_default_media
24
24
  mail = TMail::Mail.parse(load_mail('nextel-image-01.mail').join)
25
25
  mms = MMS2R::Media.create(mail)
26
26
  mms.process
27
27
 
28
- file = mms.get_media
28
+ file = mms.default_media
29
29
  assert_file_size file, 337
30
30
  assert_equal 'Jan15_0001.jpg', file.original_filename
31
31
  assert_equal 337, file.size
@@ -20,7 +20,7 @@ class MMS2R::OrangeFranceMediaTest < Test::Unit::TestCase
20
20
  mail = TMail::Mail.parse(load_mail('orangefrance-text-and-image.mail').join)
21
21
  mms = MMS2R::Media.create(mail)
22
22
  mms.process
23
- assert_nil mms.get_subject
23
+ assert_nil mms.subject
24
24
  end
25
25
 
26
26
  def test_processed_content
@@ -39,12 +39,12 @@ class MMS2R::OrangeFranceMediaTest < Test::Unit::TestCase
39
39
  file = mms.media['text/plain'].first
40
40
  assert File::exist?(file), "file #{file} does not exist"
41
41
  text = IO.readlines("#{file}").join
42
- assert_match /Test ma poule/, text
42
+ assert_match(/Test ma poule/, text)
43
43
 
44
44
  # image
45
45
  assert_not_nil mms.media['image/jpeg']
46
46
  assert_equal 1, mms.media['image/jpeg'].size
47
- assert_match /IMAGE.jpeg$/, mms.media['image/jpeg'].first
47
+ assert_match(/IMAGE.jpeg$/, mms.media['image/jpeg'].first)
48
48
  assert_file_size mms.media['image/jpeg'].first, 337
49
49
 
50
50
  mms.purge
@@ -15,7 +15,7 @@ class MMS2R::OrangePolandMediaTest < Test::Unit::TestCase
15
15
  mms = MMS2R::Media.create(mail)
16
16
  assert_equal MMS2R::OrangePolandMedia, mms.class, "expected a #{MMS2R::OrangePolandMedia} and received a #{mms.class}"
17
17
  mms.process
18
- assert_nil mms.get_subject
18
+ assert_nil mms.subject
19
19
  assert_not_nil mms.media['text/plain']
20
20
  file = mms.media['text/plain'][0]
21
21
  assert_not_nil file
@@ -30,7 +30,7 @@ class MMS2R::OrangePolandMediaTest < Test::Unit::TestCase
30
30
  mms = MMS2R::Media.create(mail)
31
31
  assert_equal MMS2R::OrangePolandMedia, mms.class, "expected a #{MMS2R::OrangePolandMedia} and received a #{mms.class}"
32
32
  mms.process
33
- assert mms.get_subject, "whazzup"
33
+ assert mms.subject, "whazzup"
34
34
  assert_not_nil mms.media['text/plain']
35
35
  file = mms.media['text/plain'][0]
36
36
  assert_not_nil file
@@ -130,8 +130,8 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
130
130
  mms.process
131
131
  assert_equal 1, mms.media.size
132
132
  assert_equal 1, mms.media['text/plain'].size
133
- assert_equal 7, mms.get_text.size
134
- text = IO.readlines("#{mms.get_text.path}").join
133
+ assert_equal 7, mms.default_text.size
134
+ text = IO.readlines("#{mms.default_text.path}").join
135
135
  assert_match(/Tea Pot/, text)
136
136
  mms.purge
137
137
  end
@@ -140,7 +140,7 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
140
140
  mail = TMail::Mail.parse(load_mail('sprint-image-01.mail').join)
141
141
  mms = MMS2R::Media.create(mail)
142
142
  mms.process
143
- assert_equal '2068509247', mms.get_number
143
+ assert_equal '2068509247', mms.number
144
144
  mms.purge
145
145
  end
146
146
 
@@ -157,7 +157,7 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
157
157
 
158
158
  assert_file_size mms.media['video/quicktime'][0], 49063
159
159
 
160
- assert_equal nil, mms.get_subject, "Default Sprint subject not scrubbed."
160
+ assert_equal nil, mms.subject, "Default Sprint subject not scrubbed."
161
161
 
162
162
  mms.purge
163
163
  end
@@ -175,11 +175,25 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
175
175
 
176
176
  assert_file_size mms.media['image/jpeg'][0], 337
177
177
 
178
- assert_equal nil, mms.get_subject, "Default Sprint subject not scrubbed"
178
+ assert_equal nil, mms.subject, "Default Sprint subject not scrubbed"
179
179
 
180
180
  mms.purge
181
181
  end
182
182
 
183
+ def test_collect_image_using_block
184
+ mail = TMail::Mail.parse(load_mail('sprint-image-01.mail').join)
185
+ mms = MMS2R::Media.create(mail)
186
+ file_array = nil
187
+ mms.process do |k, v|
188
+ file_array = v if (k == 'image/jpeg')
189
+ assert_not_nil(file = file_array.first)
190
+ assert(File::exist?(file), "file #{file} does not exist")
191
+ assert(File.basename(file) =~ /000_0123a01234567890_1-0\.jpg/, "file #{file} does not exist")
192
+ end
193
+ # mms.purge has to be called manually
194
+ assert File.exist?(file_array.first)
195
+ end
196
+
183
197
  def test_should_have_two_images
184
198
  mail = TMail::Mail.parse(load_mail('sprint-two-images-01.mail').join)
185
199
  mms = MMS2R::Media.create(mail)
@@ -197,7 +211,7 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
197
211
  assert_file_size mms.media['image/jpeg'][0], 337
198
212
  assert_file_size mms.media['image/jpeg'][1], 337
199
213
 
200
- assert_equal nil, mms.get_subject, "Default Sprint subject not scrubbed"
214
+ assert_equal nil, mms.subject, "Default Sprint subject not scrubbed"
201
215
 
202
216
  mms.purge
203
217
  end
@@ -212,10 +226,10 @@ class MMS2R::SprintMediaTest < Test::Unit::TestCase
212
226
  mms.purge
213
227
  end
214
228
 
215
- def test_get_body_should_return_nil_when_there_is_no_user_text
229
+ def test_body_should_return_nil_when_there_is_no_user_text
216
230
  mail = TMail::Mail.parse(load_mail('sprint-image-01.mail').join)
217
231
  mms = MMS2R::Media.create(mail)
218
232
  mms.process
219
- assert_equal nil, mms.get_body
233
+ assert_equal nil, mms.body
220
234
  end
221
235
  end
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: mms2r
5
5
  version: !ruby/object:Gem::Version
6
- version: 1.1.10
7
- date: 2007-09-30 00:00:00 -07:00
6
+ version: 1.1.11
7
+ date: 2007-10-20 00:00:00 -07:00
8
8
  summary: Extract user media from MMS (and not carrier cruft)
9
9
  require_paths:
10
10
  - lib
@@ -52,8 +52,8 @@ files:
52
52
  - conf/mms2r_verizon_media_transform.yml
53
53
  - dev_tools/debug_sprint_hpricot_parsing.rb
54
54
  - lib/mms2r.rb
55
- - lib/mms2r/a_t_t_media.rb
56
55
  - lib/mms2r/alltel_media.rb
56
+ - lib/mms2r/att_media.rb
57
57
  - lib/mms2r/cingular_me_media.rb
58
58
  - lib/mms2r/dobson_media.rb
59
59
  - lib/mms2r/helio_media.rb
@@ -132,8 +132,8 @@ files:
132
132
  - test/fixtures/verizon-video-01.mail
133
133
  - test/fixtures/vtext-text-01.mail
134
134
  - test/test_helper.rb
135
- - test/test_mms2r_a_t_t_media.rb
136
135
  - test/test_mms2r_alltel_media.rb
136
+ - test/test_mms2r_att_media.rb
137
137
  - test/test_mms2r_cingular_me_media.rb
138
138
  - test/test_mms2r_dobson_media.rb
139
139
  - test/test_mms2r_helio_media.rb
@@ -155,6 +155,7 @@ test_files:
155
155
  - test/test_mms2r_orange_poland_media.rb
156
156
  - test/test_mms2r_helio_media.rb
157
157
  - test/test_mms2r_sprint_pcs_media.rb
158
+ - test/test_mms2r_att_media.rb
158
159
  - test/test_mms2r_media.rb
159
160
  - test/test_mms2r_my_cingular_media.rb
160
161
  - test/test_mms2r_nextel_media.rb
@@ -167,7 +168,6 @@ test_files:
167
168
  - test/test_mms2r_verizon_media.rb
168
169
  - test/test_helper.rb
169
170
  - test/test_mms2r_t_mobile_media.rb
170
- - test/test_mms2r_a_t_t_media.rb
171
171
  rdoc_options:
172
172
  - --main
173
173
  - README.txt
@@ -207,5 +207,5 @@ dependencies:
207
207
  requirements:
208
208
  - - ">="
209
209
  - !ruby/object:Gem::Version
210
- version: 1.2.1
210
+ version: 1.3.0
211
211
  version: