Skip to content

Commit eff3d84

Browse files
committed
♻️ Move STATUS response parser tests to yaml
1 parent adba39f commit eff3d84

File tree

2 files changed

+28
-13
lines changed

2 files changed

+28
-13
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
:tests:
3+
test_status_response_uidnext_uidvalidity:
4+
:response: "* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234)\r\n"
5+
:expected: !ruby/struct:Net::IMAP::UntaggedResponse
6+
name: STATUS
7+
data: !ruby/struct:Net::IMAP::StatusData
8+
mailbox: INBOX
9+
attr:
10+
UIDNEXT: 1
11+
UIDVALIDITY: 1234
12+
raw_data: "* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234)\r\n"
13+
14+
test_invalid_status_response_trailing_space:
15+
:comments: |
16+
[Bug #13649]
17+
:response: "* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234) \r\n"
18+
:expected: !ruby/struct:Net::IMAP::UntaggedResponse
19+
name: STATUS
20+
data: !ruby/struct:Net::IMAP::StatusData
21+
mailbox: INBOX
22+
attr:
23+
UIDNEXT: 1
24+
UIDVALIDITY: 1234
25+
raw_data: "* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234) \r\n"

test/net/imap/test_imap_response_parser.rb

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ def teardown
3939
# §7.3.2: NAMESPACE response (also RFC2342)
4040
generate_tests_from fixture_file: "namespace_responses.yml"
4141

42+
# §7.3.3: STATUS response
43+
generate_tests_from fixture_file: "status_responses.yml"
44+
4245
# RFC3501 §7.2.5: SEARCH response (obsolete in IMAP4rev2):
4346
generate_tests_from fixture_file: "search_responses.yml"
4447

@@ -76,19 +79,6 @@ def test_enable
7679
assert_equal("SMTPUTF8", response.data.first)
7780
end
7881

79-
# [Bug #13649]
80-
def test_status
81-
parser = Net::IMAP::ResponseParser.new
82-
response = parser.parse("* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234)\r\n")
83-
assert_equal("STATUS", response.name)
84-
assert_equal("INBOX", response.data.mailbox)
85-
assert_equal(1234, response.data.attr["UIDVALIDITY"])
86-
response = parser.parse("* STATUS INBOX (UIDNEXT 1 UIDVALIDITY 1234) \r\n")
87-
assert_equal("STATUS", response.name)
88-
assert_equal("INBOX", response.data.mailbox)
89-
assert_equal(1234, response.data.attr["UIDVALIDITY"])
90-
end
91-
9282
def test_continuation_request_without_response_text
9383
parser = Net::IMAP::ResponseParser.new
9484
response = parser.parse("+\r\n")

0 commit comments

Comments
 (0)