gmail 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.coveralls.yml +1 -0
- data/.gitignore +27 -27
- data/.rspec +1 -1
- data/.rubocop.yml +53 -13
- data/.rubocop_todo.yml +299 -239
- data/.travis.yml +19 -19
- data/CHANGELOG.md +152 -145
- data/Gemfile +5 -3
- data/LICENSE +21 -21
- data/README.md +380 -355
- data/Rakefile +44 -46
- data/gmail.gemspec +32 -34
- data/lib/gmail.rb +72 -78
- data/lib/gmail/client.rb +35 -34
- data/lib/gmail/client/base.rb +244 -229
- data/lib/gmail/client/plain.rb +24 -24
- data/lib/gmail/client/xoauth.rb +67 -68
- data/lib/gmail/client/xoauth2.rb +39 -39
- data/lib/gmail/imap_extensions.rb +156 -159
- data/lib/gmail/labels.rb +80 -79
- data/lib/gmail/mailbox.rb +178 -175
- data/lib/gmail/message.rb +212 -207
- data/lib/gmail/version.rb +3 -3
- data/spec/account.yml.example +1 -1
- data/spec/account.yml.obfus +2 -2
- data/spec/gmail/client/base_spec.rb +5 -5
- data/spec/gmail/client/plain_spec.rb +169 -169
- data/spec/gmail/client/xoauth2_spec.rb +186 -186
- data/spec/gmail/client/xoauth_spec.rb +5 -5
- data/spec/gmail/client_spec.rb +5 -5
- data/spec/gmail/imap_extensions_spec.rb +47 -47
- data/spec/gmail/labels_spec.rb +27 -27
- data/spec/gmail/mailbox_spec.rb +84 -84
- data/spec/gmail/message_spec.rb +181 -181
- data/spec/gmail_spec.rb +40 -39
- data/spec/recordings/gmail/_new_connects_with_client_and_give_it_context_when_block_given.yml +61 -28
- data/spec/recordings/gmail/_new_connects_with_gmail_service_and_return_valid_connection_object.yml +43 -28
- data/spec/recordings/gmail/_new_does_not_raise_error_when_couldn_t_connect_with_given_account.yml +21 -13
- data/spec/recordings/gmail/_new_raises_error_when_couldn_t_connect_with_given_account.yml +21 -13
- data/spec/recordings/gmail_client_plain/instance/delivers_inline_composed_email.yml +61 -42
- data/spec/recordings/gmail_client_plain/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +21 -13
- data/spec/recordings/gmail_client_plain/instance/does_not_raise_error_even_though_gmail_account_is_invalid.yml +21 -13
- data/spec/recordings/gmail_client_plain/instance/labels/checks_if_there_is_given_label_defined.yml +409 -196
- data/spec/recordings/gmail_client_plain/instance/labels/creates_given_label.yml +280 -151
- data/spec/recordings/gmail_client_plain/instance/labels/removes_existing_label.yml +271 -146
- data/spec/recordings/gmail_client_plain/instance/labels/returns_list_of_all_available_labels.yml +227 -113
- data/spec/recordings/gmail_client_plain/instance/properly_logs_in_to_valid_gmail_account.yml +61 -42
- data/spec/recordings/gmail_client_plain/instance/properly_logs_out_from_gmail.yml +61 -42
- data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox.yml +164 -109
- data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox_using_block_style.yml +164 -109
- data/spec/recordings/gmail_client_plain/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +21 -13
- data/spec/recordings/gmail_client_xo_auth2/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +24 -13
- data/spec/recordings/gmail_client_xo_auth2/instance/labels/checks_if_there_is_given_label_defined.yml +39 -27
- data/spec/recordings/gmail_client_xo_auth2/instance/labels/creates_given_label.yml +52 -39
- data/spec/recordings/gmail_client_xo_auth2/instance/labels/removes_existing_label.yml +52 -39
- data/spec/recordings/gmail_client_xo_auth2/instance/labels/returns_list_of_all_available_labels.yml +39 -27
- data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_in_to_valid_gmail_account.yml +26 -15
- data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_out_from_gmail.yml +26 -15
- data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox.yml +63 -40
- data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox_using_block_style.yml +63 -40
- data/spec/recordings/gmail_client_xo_auth2/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +24 -13
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/all/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/and_the_mailbox_does_not_exist/returns_the_mailbox_name_as_a_string.yml +229 -110
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/drafts/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/flagged/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/important/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/inbox/localizes_into_the_appropriate_label.yml +61 -42
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/junk/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/sent/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/trash/localizes_into_the_appropriate_label.yml +229 -116
- data/spec/recordings/gmail_mailbox/instance/counts_all_emails.yml +595 -277
- data/spec/recordings/gmail_mailbox/instance/finds_messages.yml +1049 -586
- data/spec/recordings/gmail_mailbox/instance/waits_once.yml +191 -136
- data/spec/recordings/gmail_mailbox/instance/waits_repeatedly.yml +217 -141
- data/spec/recordings/gmail_mailbox/instance/waits_with_29-minute_re-issue.yml +188 -136
- data/spec/recordings/gmail_mailbox/instance/waits_with_an_unblocked_connection.yml +644 -207
- data/spec/recordings/gmail_mailbox/on_initialize/sets_client_and_name.yml +61 -42
- data/spec/recordings/gmail_mailbox/on_initialize/works_in_inbox_by_default.yml +61 -42
- data/spec/recordings/gmail_message/initialize/sets_prefetch_attrs.yml +1068 -578
- data/spec/recordings/gmail_message/initialize/sets_uid_and_mailbox.yml +1068 -580
- data/spec/recordings/gmail_message/instance_methods/deletes_itself.yml +1084 -637
- data/spec/recordings/gmail_message/instance_methods/marks_itself_read.yml +1137 -682
- data/spec/recordings/gmail_message/instance_methods/marks_itself_unread.yml +1153 -686
- data/spec/recordings/gmail_message/instance_methods/moves_from_one_tag_to_other.yml +1447 -862
- data/spec/recordings/gmail_message/instance_methods/removes_a_given_label.yml +1288 -776
- data/spec/recordings/gmail_message/instance_methods/removes_a_given_label_with_old_method.yml +1288 -776
- data/spec/recordings/gmail_message/instance_methods/sets_given_label.yml +1165 -690
- data/spec/recordings/gmail_message/instance_methods/sets_given_label_with_old_method.yml +1157 -691
- data/spec/spec_helper.rb +56 -53
- data/spec/support/imap_mock.rb +181 -181
- data/spec/support/obfuscation.rb +49 -52
- metadata +21 -90
- data/spec/recordings/gmail_client_plain/instance/_connection_automatically_logs_in_to_gmail_account_when_it_s_called.yml +0 -42
data/spec/gmail_spec.rb
CHANGED
@@ -1,39 +1,40 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
expect(gmail
|
13
|
-
expect(gmail).
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
expect(gmail
|
20
|
-
expect(gmail).
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
end
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'net/imap'
|
3
|
+
|
4
|
+
describe Gmail do
|
5
|
+
it "should be able to convert itself to IMAP date format" do
|
6
|
+
expect(Net::IMAP.format_date(Date.new(1988, 12, 20))).to eq("20-Dec-1988")
|
7
|
+
end
|
8
|
+
|
9
|
+
%w[new new!].each do |method|
|
10
|
+
it "##{method} connects with Gmail service and return valid connection object" do
|
11
|
+
gmail = Gmail.send(method, *TEST_ACCOUNT)
|
12
|
+
expect(gmail).to be_kind_of(Gmail::Client::Plain)
|
13
|
+
expect(gmail.connection).not_to be_nil
|
14
|
+
expect(gmail).to be_logged_in
|
15
|
+
end
|
16
|
+
|
17
|
+
it "##{method} connects with client and give it context when block given" do
|
18
|
+
Gmail.send(method, *TEST_ACCOUNT) do |gmail|
|
19
|
+
expect(gmail).to be_kind_of(Gmail::Client::Plain)
|
20
|
+
expect(gmail.connection).not_to be_nil
|
21
|
+
expect(gmail).to be_logged_in
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
it "#new does not raise error when couldn't connect with given account" do
|
27
|
+
expect do
|
28
|
+
gmail = Gmail.new("foo", "bar")
|
29
|
+
expect(gmail).not_to be_logged_in
|
30
|
+
end.not_to raise_error
|
31
|
+
end
|
32
|
+
|
33
|
+
it "#new! raises error when couldn't connect with given account" do
|
34
|
+
expect do
|
35
|
+
gmail = Gmail.new!("foo", "bar")
|
36
|
+
expect(gmail).not_to be_logged_in
|
37
|
+
end.to raise_error
|
38
|
+
### FIX: can someone dig to the bottom of this? We are getting NoMethodError instead of Gmail::Client::AuthorizationError in 1.9
|
39
|
+
end
|
40
|
+
end
|
data/spec/recordings/gmail/_new_connects_with_client_and_give_it_context_when_block_given.yml
CHANGED
@@ -1,28 +1,61 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
-
- - :return
|
4
|
-
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
-
tag: RUBY0001
|
6
|
-
name: OK
|
7
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
8
|
-
code:
|
9
|
-
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
-
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
-
(Success)\r\n"
|
12
|
-
- CAPABILITY:
|
13
|
-
-
|
14
|
-
-
|
15
|
-
-
|
16
|
-
-
|
17
|
-
-
|
18
|
-
-
|
19
|
-
-
|
20
|
-
-
|
21
|
-
-
|
22
|
-
-
|
23
|
-
-
|
24
|
-
-
|
25
|
-
-
|
26
|
-
-
|
27
|
-
-
|
28
|
-
-
|
1
|
+
---
|
2
|
+
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
+
- - :return
|
4
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
+
tag: RUBY0001
|
6
|
+
name: OK
|
7
|
+
data: &2 !ruby/struct:Net::IMAP::ResponseText
|
8
|
+
code:
|
9
|
+
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
+
(Success)\r\n"
|
12
|
+
- CAPABILITY: &3
|
13
|
+
- &1
|
14
|
+
- IMAP4REV1
|
15
|
+
- UNSELECT
|
16
|
+
- IDLE
|
17
|
+
- NAMESPACE
|
18
|
+
- QUOTA
|
19
|
+
- ID
|
20
|
+
- XLIST
|
21
|
+
- CHILDREN
|
22
|
+
- X-GM-EXT-1
|
23
|
+
- UIDPLUS
|
24
|
+
- COMPRESS=DEFLATE
|
25
|
+
- ENABLE
|
26
|
+
- MOVE
|
27
|
+
- CONDSTORE
|
28
|
+
- ESEARCH
|
29
|
+
- UTF8=ACCEPT
|
30
|
+
- LIST-EXTENDED
|
31
|
+
- LIST-STATUS
|
32
|
+
- - !ruby/struct:Net::IMAP::UntaggedResponse
|
33
|
+
name: CAPABILITY
|
34
|
+
data: *1
|
35
|
+
raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
|
36
|
+
X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
|
37
|
+
LIST-EXTENDED LIST-STATUS\r\n"
|
38
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
39
|
+
tag: RUBY0001
|
40
|
+
name: OK
|
41
|
+
data: *2
|
42
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
43
|
+
(Success)\r\n"
|
44
|
+
LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
|
45
|
+
- - :return
|
46
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
47
|
+
tag: RUBY0002
|
48
|
+
name: OK
|
49
|
+
data: !ruby/struct:Net::IMAP::ResponseText
|
50
|
+
code:
|
51
|
+
text: 73 good day (Success)
|
52
|
+
raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
|
53
|
+
- CAPABILITY: *3
|
54
|
+
BYE:
|
55
|
+
- &4 !ruby/struct:Net::IMAP::ResponseText
|
56
|
+
code:
|
57
|
+
text: LOGOUT Requested
|
58
|
+
- - !ruby/struct:Net::IMAP::UntaggedResponse
|
59
|
+
name: BYE
|
60
|
+
data: *4
|
61
|
+
raw_data: "* BYE LOGOUT Requested\r\n"
|
data/spec/recordings/gmail/_new_connects_with_gmail_service_and_return_valid_connection_object.yml
CHANGED
@@ -1,28 +1,43 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
-
- - :return
|
4
|
-
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
-
tag: RUBY0001
|
6
|
-
name: OK
|
7
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
8
|
-
code:
|
9
|
-
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
-
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
-
(Success)\r\n"
|
12
|
-
- CAPABILITY:
|
13
|
-
-
|
14
|
-
-
|
15
|
-
-
|
16
|
-
-
|
17
|
-
-
|
18
|
-
-
|
19
|
-
-
|
20
|
-
-
|
21
|
-
-
|
22
|
-
-
|
23
|
-
-
|
24
|
-
-
|
25
|
-
-
|
26
|
-
-
|
27
|
-
-
|
28
|
-
-
|
1
|
+
---
|
2
|
+
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
+
- - :return
|
4
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
+
tag: RUBY0001
|
6
|
+
name: OK
|
7
|
+
data: &2 !ruby/struct:Net::IMAP::ResponseText
|
8
|
+
code:
|
9
|
+
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
+
(Success)\r\n"
|
12
|
+
- CAPABILITY:
|
13
|
+
- &1
|
14
|
+
- IMAP4REV1
|
15
|
+
- UNSELECT
|
16
|
+
- IDLE
|
17
|
+
- NAMESPACE
|
18
|
+
- QUOTA
|
19
|
+
- ID
|
20
|
+
- XLIST
|
21
|
+
- CHILDREN
|
22
|
+
- X-GM-EXT-1
|
23
|
+
- UIDPLUS
|
24
|
+
- COMPRESS=DEFLATE
|
25
|
+
- ENABLE
|
26
|
+
- MOVE
|
27
|
+
- CONDSTORE
|
28
|
+
- ESEARCH
|
29
|
+
- UTF8=ACCEPT
|
30
|
+
- LIST-EXTENDED
|
31
|
+
- LIST-STATUS
|
32
|
+
- - !ruby/struct:Net::IMAP::UntaggedResponse
|
33
|
+
name: CAPABILITY
|
34
|
+
data: *1
|
35
|
+
raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
|
36
|
+
X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
|
37
|
+
LIST-EXTENDED LIST-STATUS\r\n"
|
38
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
39
|
+
tag: RUBY0001
|
40
|
+
name: OK
|
41
|
+
data: *2
|
42
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
43
|
+
(Success)\r\n"
|
data/spec/recordings/gmail/_new_does_not_raise_error_when_couldn_t_connect_with_given_account.yml
CHANGED
@@ -1,13 +1,21 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
-
- - :raise
|
4
|
-
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
-
message:
|
6
|
-
response: !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
-
tag: RUBY0001
|
8
|
-
name: 'NO'
|
9
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
-
code:
|
11
|
-
text:
|
12
|
-
raw_data: "RUBY0001 NO
|
13
|
-
-
|
1
|
+
---
|
2
|
+
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
+
- - :raise
|
4
|
+
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
+
message: Lookup failed v68mb389587757ivb
|
6
|
+
response: &1 !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
+
tag: RUBY0001
|
8
|
+
name: 'NO'
|
9
|
+
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
+
code:
|
11
|
+
text: Lookup failed v68mb389587757ivb
|
12
|
+
raw_data: "RUBY0001 NO Lookup failed v68mb389587757ivb\r\n"
|
13
|
+
- BYE:
|
14
|
+
- &2 !ruby/struct:Net::IMAP::ResponseText
|
15
|
+
code:
|
16
|
+
text: System Error v68mb389587757ivb
|
17
|
+
- - *1
|
18
|
+
- !ruby/struct:Net::IMAP::UntaggedResponse
|
19
|
+
name: BYE
|
20
|
+
data: *2
|
21
|
+
raw_data: "* BYE System Error v68mb389587757ivb\r\n"
|
@@ -1,13 +1,21 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
-
- - :raise
|
4
|
-
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
-
message:
|
6
|
-
response: !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
-
tag: RUBY0001
|
8
|
-
name: 'NO'
|
9
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
-
code:
|
11
|
-
text:
|
12
|
-
raw_data: "RUBY0001 NO
|
13
|
-
-
|
1
|
+
---
|
2
|
+
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
+
- - :raise
|
4
|
+
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
+
message: Lookup failed v1mb306201243igb
|
6
|
+
response: &1 !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
+
tag: RUBY0001
|
8
|
+
name: 'NO'
|
9
|
+
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
+
code:
|
11
|
+
text: Lookup failed v1mb306201243igb
|
12
|
+
raw_data: "RUBY0001 NO Lookup failed v1mb306201243igb\r\n"
|
13
|
+
- BYE:
|
14
|
+
- &2 !ruby/struct:Net::IMAP::ResponseText
|
15
|
+
code:
|
16
|
+
text: System Error v1mb306201243igb
|
17
|
+
- - *1
|
18
|
+
- !ruby/struct:Net::IMAP::UntaggedResponse
|
19
|
+
name: BYE
|
20
|
+
data: *2
|
21
|
+
raw_data: "* BYE System Error v1mb306201243igb\r\n"
|
@@ -1,42 +1,61 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
-
- - :return
|
4
|
-
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
-
tag: RUBY0001
|
6
|
-
name: OK
|
7
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
8
|
-
code:
|
9
|
-
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
-
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
-
(Success)\r\n"
|
12
|
-
- CAPABILITY: &
|
13
|
-
-
|
14
|
-
-
|
15
|
-
-
|
16
|
-
-
|
17
|
-
-
|
18
|
-
-
|
19
|
-
-
|
20
|
-
-
|
21
|
-
-
|
22
|
-
-
|
23
|
-
-
|
24
|
-
-
|
25
|
-
-
|
26
|
-
-
|
27
|
-
-
|
28
|
-
-
|
29
|
-
|
30
|
-
- -
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
1
|
+
---
|
2
|
+
LOGIN-9a890af1c86854f5170d99be6e10b8f1:
|
3
|
+
- - :return
|
4
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
5
|
+
tag: RUBY0001
|
6
|
+
name: OK
|
7
|
+
data: &2 !ruby/struct:Net::IMAP::ResponseText
|
8
|
+
code:
|
9
|
+
text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
|
10
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
11
|
+
(Success)\r\n"
|
12
|
+
- CAPABILITY: &3
|
13
|
+
- &1
|
14
|
+
- IMAP4REV1
|
15
|
+
- UNSELECT
|
16
|
+
- IDLE
|
17
|
+
- NAMESPACE
|
18
|
+
- QUOTA
|
19
|
+
- ID
|
20
|
+
- XLIST
|
21
|
+
- CHILDREN
|
22
|
+
- X-GM-EXT-1
|
23
|
+
- UIDPLUS
|
24
|
+
- COMPRESS=DEFLATE
|
25
|
+
- ENABLE
|
26
|
+
- MOVE
|
27
|
+
- CONDSTORE
|
28
|
+
- ESEARCH
|
29
|
+
- UTF8=ACCEPT
|
30
|
+
- LIST-EXTENDED
|
31
|
+
- LIST-STATUS
|
32
|
+
- - !ruby/struct:Net::IMAP::UntaggedResponse
|
33
|
+
name: CAPABILITY
|
34
|
+
data: *1
|
35
|
+
raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
|
36
|
+
X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
|
37
|
+
LIST-EXTENDED LIST-STATUS\r\n"
|
38
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
39
|
+
tag: RUBY0001
|
40
|
+
name: OK
|
41
|
+
data: *2
|
42
|
+
raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
|
43
|
+
(Success)\r\n"
|
44
|
+
LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
|
45
|
+
- - :return
|
46
|
+
- !ruby/struct:Net::IMAP::TaggedResponse
|
47
|
+
tag: RUBY0002
|
48
|
+
name: OK
|
49
|
+
data: !ruby/struct:Net::IMAP::ResponseText
|
50
|
+
code:
|
51
|
+
text: 73 good day (Success)
|
52
|
+
raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
|
53
|
+
- CAPABILITY: *3
|
54
|
+
BYE:
|
55
|
+
- &4 !ruby/struct:Net::IMAP::ResponseText
|
56
|
+
code:
|
57
|
+
text: LOGOUT Requested
|
58
|
+
- - !ruby/struct:Net::IMAP::UntaggedResponse
|
59
|
+
name: BYE
|
60
|
+
data: *4
|
61
|
+
raw_data: "* BYE LOGOUT Requested\r\n"
|
@@ -1,13 +1,21 @@
|
|
1
|
-
---
|
2
|
-
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
-
- - :raise
|
4
|
-
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
-
message:
|
6
|
-
response: !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
-
tag: RUBY0001
|
8
|
-
name: 'NO'
|
9
|
-
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
-
code:
|
11
|
-
text:
|
12
|
-
raw_data: "RUBY0001 NO
|
13
|
-
-
|
1
|
+
---
|
2
|
+
LOGIN-f0cde728d1c78eb72490f79825821b1c:
|
3
|
+
- - :raise
|
4
|
+
- !ruby/exception:Net::IMAP::NoResponseError
|
5
|
+
message: Lookup failed 77mb215962361itf
|
6
|
+
response: &1 !ruby/struct:Net::IMAP::TaggedResponse
|
7
|
+
tag: RUBY0001
|
8
|
+
name: 'NO'
|
9
|
+
data: !ruby/struct:Net::IMAP::ResponseText
|
10
|
+
code:
|
11
|
+
text: Lookup failed 77mb215962361itf
|
12
|
+
raw_data: "RUBY0001 NO Lookup failed 77mb215962361itf\r\n"
|
13
|
+
- BYE:
|
14
|
+
- &2 !ruby/struct:Net::IMAP::ResponseText
|
15
|
+
code:
|
16
|
+
text: System Error 77mb215962361itf
|
17
|
+
- - *1
|
18
|
+
- !ruby/struct:Net::IMAP::UntaggedResponse
|
19
|
+
name: BYE
|
20
|
+
data: *2
|
21
|
+
raw_data: "* BYE System Error 77mb215962361itf\r\n"
|