diff --git a/lib/net/imap/response_parser.rb b/lib/net/imap/response_parser.rb index 3535792b..e608c6d8 100644 --- a/lib/net/imap/response_parser.rb +++ b/lib/net/imap/response_parser.rb @@ -1743,6 +1743,7 @@ def status_att_val when "SIZE" then number64 # RFC8483, RFC9051 when "HIGHESTMODSEQ" then mod_sequence_valzer # RFC7162 when "MAILBOXID" then parens__objectid # RFC8474 + when "APPENDLIMIT" then NIL? ? nil : number # RFC7889 else number? || ExtensionData.new(tagged_ext_val) end diff --git a/test/net/imap/fixtures/response_parser/status_responses.yml b/test/net/imap/fixtures/response_parser/status_responses.yml index 59ff251a..b1223ac0 100644 --- a/test/net/imap/fixtures/response_parser/status_responses.yml +++ b/test/net/imap/fixtures/response_parser/status_responses.yml @@ -25,6 +25,16 @@ UIDVALIDITY: 1234 raw_data: "* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234)\r\n" + test_status_response_appendlimit_nil: + :response: "* STATUS INBOX (APPENDLIMIT NIL)\r\n" + :expected: !ruby/struct:Net::IMAP::UntaggedResponse + name: STATUS + data: !ruby/struct:Net::IMAP::StatusData + mailbox: INBOX + attr: + APPENDLIMIT: + raw_data: "* STATUS INBOX (APPENDLIMIT NIL)\r\n" + test_status_response_empty_attribute_list: :response: "* STATUS INBOX ()\r\n" :expected: !ruby/struct:Net::IMAP::UntaggedResponse