mirror of
https://github.com/github/rails.git
synced 2026-01-30 08:48:06 -05:00
Remove old tests which relied on @ being an ATOM to work around old Mail.app bugs. Closes #10317 [mikel]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8257 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
@@ -1,73 +1,52 @@
|
||||
=begin rdoc
|
||||
# = TITLE:
|
||||
#
|
||||
# Base64
|
||||
#
|
||||
# = COPYRIGHT:
|
||||
#
|
||||
# Copyright (c) 1998-2003 Minero Aoki <aamine@loveruby.net>
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining
|
||||
# a copy of this software and associated documentation files (the
|
||||
# "Software"), to deal in the Software without restriction, including
|
||||
# without limitation the rights to use, copy, modify, merge, publish,
|
||||
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||
# permit persons to whom the Software is furnished to do so, subject to
|
||||
# the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be
|
||||
# included in all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# Note: Originally licensed under LGPL v2+. Using MIT license for Rails
|
||||
# with permission of Minero Aoki.
|
||||
|
||||
= Base64 handling class
|
||||
|
||||
=end
|
||||
#--
|
||||
# Copyright (c) 1998-2003 Minero Aoki <aamine@loveruby.net>
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining
|
||||
# a copy of this software and associated documentation files (the
|
||||
# "Software"), to deal in the Software without restriction, including
|
||||
# without limitation the rights to use, copy, modify, merge, publish,
|
||||
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||
# permit persons to whom the Software is furnished to do so, subject to
|
||||
# the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be
|
||||
# included in all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# Note: Originally licensed under LGPL v2+. Using MIT license for Rails
|
||||
# with permission of Minero Aoki.
|
||||
#++
|
||||
|
||||
module TMail
|
||||
|
||||
module Base64
|
||||
|
||||
module_function
|
||||
|
||||
def rb_folding_encode( str, eol = "\n", limit = 60 )
|
||||
def folding_encode( str, eol = "\n", limit = 60 )
|
||||
[str].pack('m')
|
||||
end
|
||||
|
||||
def rb_encode( str )
|
||||
def encode( str )
|
||||
[str].pack('m').tr( "\r\n", '' )
|
||||
end
|
||||
|
||||
def rb_decode( str, strict = false )
|
||||
def decode( str, strict = false )
|
||||
str.unpack('m').first
|
||||
end
|
||||
|
||||
begin
|
||||
require 'tmail/base64.so'
|
||||
alias folding_encode c_folding_encode
|
||||
alias encode c_encode
|
||||
alias decode c_decode
|
||||
class << self
|
||||
alias folding_encode c_folding_encode
|
||||
alias encode c_encode
|
||||
alias decode c_decode
|
||||
end
|
||||
rescue LoadError
|
||||
alias folding_encode rb_folding_encode
|
||||
alias encode rb_encode
|
||||
alias decode rb_decode
|
||||
class << self
|
||||
alias folding_encode rb_folding_encode
|
||||
alias encode rb_encode
|
||||
alias decode rb_decode
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
34
actionmailer/test/fixtures/raw_email11
vendored
34
actionmailer/test/fixtures/raw_email11
vendored
@@ -1,34 +0,0 @@
|
||||
From xxx@xxxx.com Wed Apr 27 14:15:31 2005
|
||||
Mime-Version: 1.0 (Apple Message framework v619.2)
|
||||
To: xxxxx@xxxxx <matmail>
|
||||
Message-Id: <416eaebec6d333ec6939eaf8a7d80724@xxxxx>
|
||||
Content-Type: multipart/alternative;
|
||||
boundary=Apple-Mail-5-1037861608
|
||||
From: xxxxx@xxxxx <xxxxx@xxxxx>
|
||||
Subject: worse when you use them.
|
||||
Date: Wed, 27 Apr 2005 14:15:31 -0700
|
||||
|
||||
|
||||
|
||||
|
||||
--Apple-Mail-5-1037861608
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Content-Type: text/plain;
|
||||
charset=US-ASCII;
|
||||
format=flowed
|
||||
|
||||
|
||||
XXXXX Xxxxx
|
||||
|
||||
--Apple-Mail-5-1037861608
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Content-Type: text/enriched;
|
||||
charset=US-ASCII
|
||||
|
||||
|
||||
|
||||
<bold>XXXXX Xxxxx</bold>
|
||||
|
||||
|
||||
--Apple-Mail-5-1037861608--
|
||||
|
||||
@@ -852,12 +852,6 @@ EOF
|
||||
assert_nothing_raised { mail.body }
|
||||
end
|
||||
|
||||
def test_decode_message_with_unquoted_atchar_in_header
|
||||
fixture = File.read(File.dirname(__FILE__) + "/fixtures/raw_email11")
|
||||
mail = TMail::Mail.parse(fixture)
|
||||
assert_not_nil mail.from
|
||||
end
|
||||
|
||||
def test_empty_header_values_omitted
|
||||
result = TestMailer.create_unnamed_attachment(@recipient).encoded
|
||||
assert_match %r{Content-Type: application/octet-stream[^;]}, result
|
||||
|
||||
@@ -70,36 +70,14 @@ class QuotingTest < Test::Unit::TestCase
|
||||
assert_equal "Re: Test: \"\346\274\242\345\255\227\" mid \"\346\274\242\345\255\227\" tail", mail.subject
|
||||
end
|
||||
|
||||
def test_rb_decode
|
||||
def test_decode
|
||||
encoded, decoded = expected_base64_strings
|
||||
assert_equal decoded, TMail::Base64.rb_decode(encoded)
|
||||
assert_equal decoded, TMail::Base64.decode(encoded)
|
||||
end
|
||||
|
||||
def test_rb_encode
|
||||
def test_encode
|
||||
encoded, decoded = expected_base64_strings
|
||||
assert_equal encoded.length, TMail::Base64.rb_encode(decoded).length
|
||||
end
|
||||
|
||||
def test_rb_decode_should_match_c_decode_if_available
|
||||
encoded, decoded = expected_base64_strings
|
||||
|
||||
begin
|
||||
require 'tmail/base64.so'
|
||||
assert_equal TMail::Base64.rb_decode(encoded), TMail::Base64.c_decode(encoded)
|
||||
rescue LoadError
|
||||
# No .so
|
||||
end
|
||||
end
|
||||
|
||||
def test_rb_encode_should_match_c_encode_if_available
|
||||
encoded, decoded = expected_base64_strings
|
||||
|
||||
begin
|
||||
require 'tmail/base64.so'
|
||||
assert_equal TMail::Base64.rb_encode(decoded), TMail::Base64.c_encode(decoded)
|
||||
rescue LoadError
|
||||
# No .so
|
||||
end
|
||||
assert_equal encoded.length, TMail::Base64.encode(decoded).length
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
Reference in New Issue
Block a user