diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | lib/net/imap.rb | 1 | ||||
-rw-r--r-- | test/net/imap/test_imap_response_parser.rb | 11 |
3 files changed, 19 insertions, 0 deletions
@@ -1,3 +1,10 @@ +Wed Jun 5 22:40:42 2013 Shugo Maeda <shugo@ruby-lang.org> + + * lib/net/imap.rb (capability_response): should ignore trailing + spaces. Thanks, Peter Kovacs. [ruby-core:55024] [Bug #8415] + + * test/net/imap/test_imap_response_parser.rb: related test. + Wed Jun 5 21:17:08 2013 Tanaka Akira <akr@fsij.org> * bignum.c (big_fdiv): Use nlz() instead of bdigbitsize(). diff --git a/lib/net/imap.rb b/lib/net/imap.rb index a816b4e263..55c611b9c6 100644 --- a/lib/net/imap.rb +++ b/lib/net/imap.rb @@ -2953,6 +2953,7 @@ module Net break when T_SPACE shift_token + next end data.push(atom.upcase) end diff --git a/test/net/imap/test_imap_response_parser.rb b/test/net/imap/test_imap_response_parser.rb index c329f4285f..cecc015133 100644 --- a/test/net/imap/test_imap_response_parser.rb +++ b/test/net/imap/test_imap_response_parser.rb @@ -237,4 +237,15 @@ EOF response.data[0].user) assert_equal("lrswickxteda", response.data[0].rights) end + + # [Bug #8415] + def test_capability + parser = Net::IMAP::ResponseParser.new + response = parser.parse("* CAPABILITY st11p00mm-iscream009 1Q49 XAPPLEPUSHSERVICE IMAP4 IMAP4rev1 SASL-IR AUTH=ATOKEN AUTH=PLAIN\r\n") + assert_equal("CAPABILITY", response.name) + assert_equal("AUTH=PLAIN", response.data.last) + response = parser.parse("* CAPABILITY st11p00mm-iscream009 1Q49 XAPPLEPUSHSERVICE IMAP4 IMAP4rev1 SASL-IR AUTH=ATOKEN AUTH=PLAIN \r\n") + assert_equal("CAPABILITY", response.name) + assert_equal("AUTH=PLAIN", response.data.last) + end end |