class TestMailHeader
Public Instance Methods
test_address()
click to toggle source
# File vendor/qwik/lib/qwik/mail-header.rb, line 343 def test_address mail = QuickML::Mail.new # test_from ok_eq('unknown', mail.from) mail['From'] = 'a@e.com' ok_eq('a@e.com', mail.from) # test_valid? ok_eq(false, mail.valid?) # test_add_recipient mail.add_recipient('b@e.com') ok_eq(false, mail.valid?) # test_clear_recipients mail.clear_recipients # test_collect_to ok_eq([], mail.collect_to) mail['To'] = 't@e.com' ok_eq(['t@e.com'], mail.collect_to) # test_collect_cc ok_eq([], mail.collect_cc) mail['Cc'] = 'c@e.com' ok_eq(['c@e.com'], mail.collect_cc) end
test_all()
click to toggle source
# File vendor/qwik/lib/qwik/mail-header.rb, line 312 def test_all mail = QuickML::Mail.new # test_header ok_eq([], mail.header) # test_[]= mail['k'] = 'v' # test_[] ok_eq('v', mail['k']) # test_unshift_field mail.unshift_field('k2', 'v2') ok_eq([['k2', 'v2'], ['k', 'v']], mail.header) # test_each_field mail.each_field {|k, v| # do nothing. } # test_get_unified_subject mail['Subject'] = 'Re: [t:1] s' ok_eq('s', mail.get_unified_subject('t')) # test_looping? ok_eq(false, mail.looping?) mail['X-QuickML'] = 'true' ok_eq(true, mail.looping?) end
test_class_method()
click to toggle source
# File vendor/qwik/lib/qwik/mail-header.rb, line 372 def test_class_method c = QuickML::Mail # test_collect_address ok_eq(['a@example.net'], c.collect_address('a@example.net')) # test_get_unified_subject ok_eq('t', c.get_unified_subject('t', 'test')) ok_eq('t', c.get_unified_subject('Re: t', 'test')) ok_eq('t', c.get_unified_subject(' t', 'test')) ok_eq('t', c.get_unified_subject('t ', 'test')) ok_eq('t t', c.get_unified_subject('t t', 'test')) ok_eq('t t', c.get_unified_subject('t t', 'test')) ok_eq('t t t', c.get_unified_subject('t t t', 'test')) ok_eq('t t t', c.get_unified_subject('t t t', 'test')) ok_eq('Test Mail', c.get_unified_subject('Re: [test:1] Test Mail', 'test')) ok_eq('テスト', c.get_unified_subject('Re: [test:1] テスト ', 'test')) # test_remove_comment_in_field ok_eq('', c.remove_comment_in_field('')) ok_eq('ac', c.remove_comment_in_field('a(b)c')) ok_eq('ace', c.remove_comment_in_field('a(b)c(d)e')) # test_get_charset ok_eq(nil, c.get_charset('')) ok_eq('ascii', c.get_charset('text/plain; charset="ascii"')) ok_eq('iso-2022-jp', c.get_charset('text/plain; charset=ISO-2022-JP')) ok_eq('shift_jis', c.get_charset('text/plain; charset=Shift_JIS')) # test_get_contenttype ok_eq(nil, c.get_content_type('')) ok_eq('text/plain', c.get_content_type('text/plain; charset="ascii"')) ok_eq('multipart/mixed', c.get_content_type("multipart/mixed; boundary='boundary'")) ok_eq('multipart/alternative', c.get_content_type("multipart/alternative; boundary='b'")) # test_encode_field ok_eq("\201@", ' ') ok_eq("\352\242", '瑤') ok_eq('t', c.encode_field('t')) ok_eq('=?ISO-2022-JP?B?GyRCJCIbKEI=?=', c.encode_field('あ')) ok_eq('=?ISO-2022-JP?B?GyRCJCIkJBsoQg==?=', c.encode_field('あい')) ok_eq('=?ISO-2022-JP?B?GyRCJCIkJCQmJCgkKiQrJC0kLyQxJDMbKEI=?= =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPRsoQg==?=', c.encode_field('あいうえおかきくけこさしすせそ')) ok_eq('[test:1] Re: =?ISO-2022-JP?B?GyRCJUYlOSVIGyhCICA=?=', c.encode_field('[test:1] Re: テスト ')) ok_eq('[test:1] Re: =?ISO-2022-JP?B?GyRCJUYlOSVIGyhCIA==?=', c.encode_field('[test:1] Re: テスト ')) ok_eq('[test:1] Re: =?ISO-2022-JP?B?GyRCJCIbKEI=?=', c.encode_field('[test:1] Re: あ')) # test_decode_subject ok_eq('t', c.decode_subject('t')) ok_eq('st', c.decode_subject("s\nt")) ok_eq('s t', c.decode_subject("s\n t")) ok_eq("\202\240 ", c.decode_subject('=?iso-2022-jp?B?GyRCJCIbKEI=?= ')) ok_eq( '[test:33] とてもとてもとてもとてもとてもとても長い長い長い長い長い長い長い長い長いとてもとてもとてもとてもとてもとても長い長い長い長い長い長い長い長い長い日本語サブジェクトのテスト', c.decode_subject('[test:33] =?ISO-2022-JP?B?GyRCJEgkRiRiJEgkRiRiJEgkRiRiJEgbKEI=?= =?ISO-2022-JP?B?GyRCJEYkYiRIJEYkYiRIJEYkYkQ5JCQbKEI=?= =?ISO-2022-JP?B?GyRCRDkkJEQ5JCREOSQkRDkkJEQ5JCQbKEI=?= =?ISO-2022-JP?B?GyRCRDkkJEQ5JCREOSQkJEgkRiRiJEgbKEI=?= =?ISO-2022-JP?B?GyRCJEYkYiRIJEYkYiRIJEYkYiRIJEYbKEI=?= =?ISO-2022-JP?B?GyRCJGIkSCRGJGJEOSQkRDkkJEQ5JCQbKEI=?= =?ISO-2022-JP?B?GyRCRDkkJEQ5JCREOSQkRDkkJEQ5JCQbKEI=?= =?ISO-2022-JP?B?GyRCRDkkJEZ8S1w4bCU1JVYlOCUnJS8bKEI=?= =?ISO-2022-JP?B?GyRCJUgkTiVGJTklSBsoQg==?= ')) ok_eq('[test:34] very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very long なサブジェクトのテスト', c.decode_subject('[test:34] very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very very long =?ISO-2022-JP?B?GyRCJEolNSVWJTglJyUvJUgkTiVGJTkbKEI=?= =?ISO-2022-JP?B?GyRCJUgbKEI=?= ')) # test_clean_subject ok_eq('t', c.clean_subject('t', 'test')) ok_eq(' Re: Test ', c.clean_subject('[test:1] Re: Test ', 'test')) ok_eq('Re: テスト ', c.clean_subject('Re: [test:1] テスト ', 'test')) ok_eq('[hoge:2] てすと ', c.clean_subject('[hoge:2] てすと ', 'test')) ok_eq('[ttt:3] てすと ', c.clean_subject('[ttt:3] てすと ', 'test')) # test_rewrite_subject ok_eq('[n:2] t', c.rewrite_subject('t', 'n', '2')) ok_eq('[test:2] [t:3] test', c.rewrite_subject('[t:3] test', 'test', '2')) ok_eq('[test:2] Re: Test Mail', c.rewrite_subject('Re: [test:1] Test Mail', 'test', 2)) ok_eq('[test:2] Re: =?ISO-2022-JP?B?GyRCJUYlOSVIGyhCIA==?=', c.rewrite_subject('Re: [test:1] テスト ', 'test', 2)) # test_address_of_domain? ok_eq(true, c.address_of_domain?('user@example.net', 'example.net')) ok_eq(false, c.address_of_domain?('user@example.com', 'example.net')) ok_eq(false, c.address_of_domain?('user', 'example.net')) # test_content_type ok_eq('text/plain', c.content_type('text/plain', nil)) ok_eq('text/plain; charset=iso-2022-jp', c.content_type('text/plain', 'iso-2022-jp')) end