gmail 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +27 -27
  4. data/.rspec +1 -1
  5. data/.rubocop.yml +53 -13
  6. data/.rubocop_todo.yml +299 -239
  7. data/.travis.yml +19 -19
  8. data/CHANGELOG.md +152 -145
  9. data/Gemfile +5 -3
  10. data/LICENSE +21 -21
  11. data/README.md +380 -355
  12. data/Rakefile +44 -46
  13. data/gmail.gemspec +32 -34
  14. data/lib/gmail.rb +72 -78
  15. data/lib/gmail/client.rb +35 -34
  16. data/lib/gmail/client/base.rb +244 -229
  17. data/lib/gmail/client/plain.rb +24 -24
  18. data/lib/gmail/client/xoauth.rb +67 -68
  19. data/lib/gmail/client/xoauth2.rb +39 -39
  20. data/lib/gmail/imap_extensions.rb +156 -159
  21. data/lib/gmail/labels.rb +80 -79
  22. data/lib/gmail/mailbox.rb +178 -175
  23. data/lib/gmail/message.rb +212 -207
  24. data/lib/gmail/version.rb +3 -3
  25. data/spec/account.yml.example +1 -1
  26. data/spec/account.yml.obfus +2 -2
  27. data/spec/gmail/client/base_spec.rb +5 -5
  28. data/spec/gmail/client/plain_spec.rb +169 -169
  29. data/spec/gmail/client/xoauth2_spec.rb +186 -186
  30. data/spec/gmail/client/xoauth_spec.rb +5 -5
  31. data/spec/gmail/client_spec.rb +5 -5
  32. data/spec/gmail/imap_extensions_spec.rb +47 -47
  33. data/spec/gmail/labels_spec.rb +27 -27
  34. data/spec/gmail/mailbox_spec.rb +84 -84
  35. data/spec/gmail/message_spec.rb +181 -181
  36. data/spec/gmail_spec.rb +40 -39
  37. data/spec/recordings/gmail/_new_connects_with_client_and_give_it_context_when_block_given.yml +61 -28
  38. data/spec/recordings/gmail/_new_connects_with_gmail_service_and_return_valid_connection_object.yml +43 -28
  39. data/spec/recordings/gmail/_new_does_not_raise_error_when_couldn_t_connect_with_given_account.yml +21 -13
  40. data/spec/recordings/gmail/_new_raises_error_when_couldn_t_connect_with_given_account.yml +21 -13
  41. data/spec/recordings/gmail_client_plain/instance/delivers_inline_composed_email.yml +61 -42
  42. data/spec/recordings/gmail_client_plain/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +21 -13
  43. data/spec/recordings/gmail_client_plain/instance/does_not_raise_error_even_though_gmail_account_is_invalid.yml +21 -13
  44. data/spec/recordings/gmail_client_plain/instance/labels/checks_if_there_is_given_label_defined.yml +409 -196
  45. data/spec/recordings/gmail_client_plain/instance/labels/creates_given_label.yml +280 -151
  46. data/spec/recordings/gmail_client_plain/instance/labels/removes_existing_label.yml +271 -146
  47. data/spec/recordings/gmail_client_plain/instance/labels/returns_list_of_all_available_labels.yml +227 -113
  48. data/spec/recordings/gmail_client_plain/instance/properly_logs_in_to_valid_gmail_account.yml +61 -42
  49. data/spec/recordings/gmail_client_plain/instance/properly_logs_out_from_gmail.yml +61 -42
  50. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox.yml +164 -109
  51. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox_using_block_style.yml +164 -109
  52. data/spec/recordings/gmail_client_plain/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +21 -13
  53. data/spec/recordings/gmail_client_xo_auth2/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +24 -13
  54. data/spec/recordings/gmail_client_xo_auth2/instance/labels/checks_if_there_is_given_label_defined.yml +39 -27
  55. data/spec/recordings/gmail_client_xo_auth2/instance/labels/creates_given_label.yml +52 -39
  56. data/spec/recordings/gmail_client_xo_auth2/instance/labels/removes_existing_label.yml +52 -39
  57. data/spec/recordings/gmail_client_xo_auth2/instance/labels/returns_list_of_all_available_labels.yml +39 -27
  58. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_in_to_valid_gmail_account.yml +26 -15
  59. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_out_from_gmail.yml +26 -15
  60. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox.yml +63 -40
  61. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox_using_block_style.yml +63 -40
  62. data/spec/recordings/gmail_client_xo_auth2/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +24 -13
  63. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/all/localizes_into_the_appropriate_label.yml +229 -116
  64. 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
  65. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/drafts/localizes_into_the_appropriate_label.yml +229 -116
  66. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/flagged/localizes_into_the_appropriate_label.yml +229 -116
  67. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/important/localizes_into_the_appropriate_label.yml +229 -116
  68. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/inbox/localizes_into_the_appropriate_label.yml +61 -42
  69. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/junk/localizes_into_the_appropriate_label.yml +229 -116
  70. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/sent/localizes_into_the_appropriate_label.yml +229 -116
  71. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/trash/localizes_into_the_appropriate_label.yml +229 -116
  72. data/spec/recordings/gmail_mailbox/instance/counts_all_emails.yml +595 -277
  73. data/spec/recordings/gmail_mailbox/instance/finds_messages.yml +1049 -586
  74. data/spec/recordings/gmail_mailbox/instance/waits_once.yml +191 -136
  75. data/spec/recordings/gmail_mailbox/instance/waits_repeatedly.yml +217 -141
  76. data/spec/recordings/gmail_mailbox/instance/waits_with_29-minute_re-issue.yml +188 -136
  77. data/spec/recordings/gmail_mailbox/instance/waits_with_an_unblocked_connection.yml +644 -207
  78. data/spec/recordings/gmail_mailbox/on_initialize/sets_client_and_name.yml +61 -42
  79. data/spec/recordings/gmail_mailbox/on_initialize/works_in_inbox_by_default.yml +61 -42
  80. data/spec/recordings/gmail_message/initialize/sets_prefetch_attrs.yml +1068 -578
  81. data/spec/recordings/gmail_message/initialize/sets_uid_and_mailbox.yml +1068 -580
  82. data/spec/recordings/gmail_message/instance_methods/deletes_itself.yml +1084 -637
  83. data/spec/recordings/gmail_message/instance_methods/marks_itself_read.yml +1137 -682
  84. data/spec/recordings/gmail_message/instance_methods/marks_itself_unread.yml +1153 -686
  85. data/spec/recordings/gmail_message/instance_methods/moves_from_one_tag_to_other.yml +1447 -862
  86. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label.yml +1288 -776
  87. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label_with_old_method.yml +1288 -776
  88. data/spec/recordings/gmail_message/instance_methods/sets_given_label.yml +1165 -690
  89. data/spec/recordings/gmail_message/instance_methods/sets_given_label_with_old_method.yml +1157 -691
  90. data/spec/spec_helper.rb +56 -53
  91. data/spec/support/imap_mock.rb +181 -181
  92. data/spec/support/obfuscation.rb +49 -52
  93. metadata +21 -90
  94. data/spec/recordings/gmail_client_plain/instance/_connection_automatically_logs_in_to_gmail_account_when_it_s_called.yml +0 -42
@@ -1,136 +1,191 @@
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
- - - IMAP4REV1
14
- - UNSELECT
15
- - IDLE
16
- - NAMESPACE
17
- - QUOTA
18
- - ID
19
- - XLIST
20
- - CHILDREN
21
- - X-GM-EXT-1
22
- - UIDPLUS
23
- - COMPRESS=DEFLATE
24
- - ENABLE
25
- - MOVE
26
- - CONDSTORE
27
- - ESEARCH
28
- - UTF8=ACCEPT
29
- SELECT-505f013d922af4caf157dc91d6b45a60:
30
- - - :return
31
- - !ruby/struct:Net::IMAP::TaggedResponse
32
- tag: RUBY0002
33
- name: OK
34
- data: !ruby/struct:Net::IMAP::ResponseText
35
- code: !ruby/struct:Net::IMAP::ResponseCode
36
- name: READ-WRITE
37
- data:
38
- text: " INBOX selected. (Success)"
39
- raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
40
- - FLAGS: &2
41
- - - :Answered
42
- - :Flagged
43
- - :Draft
44
- - :Deleted
45
- - :Seen
46
- - "$Phishing"
47
- - "$NotPhishing"
48
- OK: &3
49
- - !ruby/struct:Net::IMAP::ResponseText
50
- code: !ruby/struct:Net::IMAP::ResponseCode
51
- name: PERMANENTFLAGS
52
- data: &1
53
- - :Answered
54
- - :Flagged
55
- - :Draft
56
- - :Deleted
57
- - :Seen
58
- - "$Phishing"
59
- - "$NotPhishing"
60
- - :*
61
- text: " Flags permitted."
62
- - !ruby/struct:Net::IMAP::ResponseText
63
- code: !ruby/struct:Net::IMAP::ResponseCode
64
- name: UIDVALIDITY
65
- data: 1
66
- text: " UIDs valid."
67
- - !ruby/struct:Net::IMAP::ResponseText
68
- code: !ruby/struct:Net::IMAP::ResponseCode
69
- name: UIDNEXT
70
- data: 55
71
- text: " Predicted next UID."
72
- - !ruby/struct:Net::IMAP::ResponseText
73
- code: !ruby/struct:Net::IMAP::ResponseCode
74
- name: HIGHESTMODSEQ
75
- data: '3817'
76
- text: ''
77
- PERMANENTFLAGS: &4
78
- - *1
79
- UIDVALIDITY: &5
80
- - 1
81
- EXISTS: &6
82
- - 51
83
- - 52
84
- RECENT: &7
85
- - 0
86
- UIDNEXT: &8
87
- - 55
88
- HIGHESTMODSEQ: &9
89
- - '3817'
90
- IDLE-19f5c646015cf36d0561f86266edaa83:
91
- - - :return
92
- - !ruby/struct:Net::IMAP::TaggedResponse
93
- tag: RUBY0003
94
- name: OK
95
- data: !ruby/struct:Net::IMAP::ResponseText
96
- code:
97
- text: IDLE terminated (Success)
98
- raw_data: "RUBY0003 OK IDLE terminated (Success)\r\n"
99
- - FLAGS: *2
100
- OK: *3
101
- PERMANENTFLAGS: *4
102
- UIDVALIDITY: *5
103
- EXISTS: *6
104
- RECENT: *7
105
- UIDNEXT: *8
106
- HIGHESTMODSEQ: *9
107
- - - !ruby/struct:Net::IMAP::ContinuationRequest
108
- data: !ruby/struct:Net::IMAP::ResponseText
109
- code:
110
- text: idling
111
- raw_data: "+ idling\r\n"
112
- - !ruby/struct:Net::IMAP::UntaggedResponse
113
- name: EXISTS
114
- data: 52
115
- raw_data: "* 52 EXISTS\r\n"
116
- LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
117
- - - :return
118
- - !ruby/struct:Net::IMAP::TaggedResponse
119
- tag: RUBY0004
120
- name: OK
121
- data: !ruby/struct:Net::IMAP::ResponseText
122
- code:
123
- text: 73 good day (Success)
124
- raw_data: "RUBY0004 OK 73 good day (Success)\r\n"
125
- - FLAGS: *2
126
- OK: *3
127
- PERMANENTFLAGS: *4
128
- UIDVALIDITY: *5
129
- EXISTS: *6
130
- RECENT: *7
131
- UIDNEXT: *8
132
- HIGHESTMODSEQ: *9
133
- BYE:
134
- - !ruby/struct:Net::IMAP::ResponseText
135
- code:
136
- text: LOGOUT Requested
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"
44
+ SELECT-505f013d922af4caf157dc91d6b45a60:
45
+ - - :return
46
+ - !ruby/struct:Net::IMAP::TaggedResponse
47
+ tag: RUBY0002
48
+ name: OK
49
+ data: &9 !ruby/struct:Net::IMAP::ResponseText
50
+ code: !ruby/struct:Net::IMAP::ResponseCode
51
+ name: READ-WRITE
52
+ data:
53
+ text: " INBOX selected. (Success)"
54
+ raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
55
+ - FLAGS: &10
56
+ - &4
57
+ - :Answered
58
+ - :Flagged
59
+ - :Draft
60
+ - :Deleted
61
+ - :Seen
62
+ - "$NotPhishing"
63
+ - "$Phishing"
64
+ OK: &11
65
+ - &5 !ruby/struct:Net::IMAP::ResponseText
66
+ code: !ruby/struct:Net::IMAP::ResponseCode
67
+ name: PERMANENTFLAGS
68
+ data: &3
69
+ - :Answered
70
+ - :Flagged
71
+ - :Draft
72
+ - :Deleted
73
+ - :Seen
74
+ - "$NotPhishing"
75
+ - "$Phishing"
76
+ - :*
77
+ text: " Flags permitted."
78
+ - &6 !ruby/struct:Net::IMAP::ResponseText
79
+ code: !ruby/struct:Net::IMAP::ResponseCode
80
+ name: UIDVALIDITY
81
+ data: 1
82
+ text: " UIDs valid."
83
+ - &7 !ruby/struct:Net::IMAP::ResponseText
84
+ code: !ruby/struct:Net::IMAP::ResponseCode
85
+ name: UIDNEXT
86
+ data: 417
87
+ text: " Predicted next UID."
88
+ - &8 !ruby/struct:Net::IMAP::ResponseText
89
+ code: !ruby/struct:Net::IMAP::ResponseCode
90
+ name: HIGHESTMODSEQ
91
+ data: '25266'
92
+ text: ''
93
+ PERMANENTFLAGS: &12
94
+ - *3
95
+ UIDVALIDITY: &13
96
+ - 1
97
+ EXISTS: &14
98
+ - 403
99
+ - 404
100
+ RECENT: &15
101
+ - 0
102
+ UIDNEXT: &16
103
+ - 417
104
+ HIGHESTMODSEQ: &17
105
+ - '25266'
106
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
107
+ name: FLAGS
108
+ data: *4
109
+ raw_data: "* FLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing
110
+ $Phishing)\r\n"
111
+ - !ruby/struct:Net::IMAP::UntaggedResponse
112
+ name: OK
113
+ data: *5
114
+ raw_data: "* OK [PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen
115
+ $NotPhishing $Phishing \\*)] Flags permitted.\r\n"
116
+ - !ruby/struct:Net::IMAP::UntaggedResponse
117
+ name: OK
118
+ data: *6
119
+ raw_data: "* OK [UIDVALIDITY 1] UIDs valid.\r\n"
120
+ - !ruby/struct:Net::IMAP::UntaggedResponse
121
+ name: EXISTS
122
+ data: 403
123
+ raw_data: "* 403 EXISTS\r\n"
124
+ - !ruby/struct:Net::IMAP::UntaggedResponse
125
+ name: RECENT
126
+ data: 0
127
+ raw_data: "* 0 RECENT\r\n"
128
+ - !ruby/struct:Net::IMAP::UntaggedResponse
129
+ name: OK
130
+ data: *7
131
+ raw_data: "* OK [UIDNEXT 417] Predicted next UID.\r\n"
132
+ - !ruby/struct:Net::IMAP::UntaggedResponse
133
+ name: OK
134
+ data: *8
135
+ raw_data: "* OK [HIGHESTMODSEQ 25266]\r\n"
136
+ - !ruby/struct:Net::IMAP::TaggedResponse
137
+ tag: RUBY0002
138
+ name: OK
139
+ data: *9
140
+ raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
141
+ IDLE-19f5c646015cf36d0561f86266edaa83:
142
+ - - :return
143
+ - !ruby/struct:Net::IMAP::TaggedResponse
144
+ tag: RUBY0003
145
+ name: OK
146
+ data: !ruby/struct:Net::IMAP::ResponseText
147
+ code:
148
+ text: IDLE terminated (Success)
149
+ raw_data: "RUBY0003 OK IDLE terminated (Success)\r\n"
150
+ - FLAGS: *10
151
+ OK: *11
152
+ PERMANENTFLAGS: *12
153
+ UIDVALIDITY: *13
154
+ EXISTS: *14
155
+ RECENT: *15
156
+ UIDNEXT: *16
157
+ HIGHESTMODSEQ: *17
158
+ - - !ruby/struct:Net::IMAP::ContinuationRequest
159
+ data: !ruby/struct:Net::IMAP::ResponseText
160
+ code:
161
+ text: idling
162
+ raw_data: "+ idling\r\n"
163
+ - !ruby/struct:Net::IMAP::UntaggedResponse
164
+ name: EXISTS
165
+ data: 404
166
+ raw_data: "* 404 EXISTS\r\n"
167
+ LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
168
+ - - :return
169
+ - !ruby/struct:Net::IMAP::TaggedResponse
170
+ tag: RUBY0004
171
+ name: OK
172
+ data: !ruby/struct:Net::IMAP::ResponseText
173
+ code:
174
+ text: 73 good day (Success)
175
+ raw_data: "RUBY0004 OK 73 good day (Success)\r\n"
176
+ - FLAGS: *10
177
+ OK: *11
178
+ PERMANENTFLAGS: *12
179
+ UIDVALIDITY: *13
180
+ EXISTS: *14
181
+ RECENT: *15
182
+ UIDNEXT: *16
183
+ HIGHESTMODSEQ: *17
184
+ BYE:
185
+ - &18 !ruby/struct:Net::IMAP::ResponseText
186
+ code:
187
+ text: LOGOUT Requested
188
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
189
+ name: BYE
190
+ data: *18
191
+ raw_data: "* BYE LOGOUT Requested\r\n"
@@ -1,141 +1,217 @@
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
- - - IMAP4REV1
14
- - UNSELECT
15
- - IDLE
16
- - NAMESPACE
17
- - QUOTA
18
- - ID
19
- - XLIST
20
- - CHILDREN
21
- - X-GM-EXT-1
22
- - UIDPLUS
23
- - COMPRESS=DEFLATE
24
- - ENABLE
25
- - MOVE
26
- - CONDSTORE
27
- - ESEARCH
28
- - UTF8=ACCEPT
29
- SELECT-505f013d922af4caf157dc91d6b45a60:
30
- - - :return
31
- - !ruby/struct:Net::IMAP::TaggedResponse
32
- tag: RUBY0002
33
- name: OK
34
- data: !ruby/struct:Net::IMAP::ResponseText
35
- code: !ruby/struct:Net::IMAP::ResponseCode
36
- name: READ-WRITE
37
- data:
38
- text: " INBOX selected. (Success)"
39
- raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
40
- - FLAGS: &2
41
- - - :Answered
42
- - :Flagged
43
- - :Draft
44
- - :Deleted
45
- - :Seen
46
- - "$Phishing"
47
- - "$NotPhishing"
48
- OK: &3
49
- - !ruby/struct:Net::IMAP::ResponseText
50
- code: !ruby/struct:Net::IMAP::ResponseCode
51
- name: PERMANENTFLAGS
52
- data: &1
53
- - :Answered
54
- - :Flagged
55
- - :Draft
56
- - :Deleted
57
- - :Seen
58
- - "$Phishing"
59
- - "$NotPhishing"
60
- - :*
61
- text: " Flags permitted."
62
- - !ruby/struct:Net::IMAP::ResponseText
63
- code: !ruby/struct:Net::IMAP::ResponseCode
64
- name: UIDVALIDITY
65
- data: 1
66
- text: " UIDs valid."
67
- - !ruby/struct:Net::IMAP::ResponseText
68
- code: !ruby/struct:Net::IMAP::ResponseCode
69
- name: UIDNEXT
70
- data: 81
71
- text: " Predicted next UID."
72
- - !ruby/struct:Net::IMAP::ResponseText
73
- code: !ruby/struct:Net::IMAP::ResponseCode
74
- name: HIGHESTMODSEQ
75
- data: '5211'
76
- text: ''
77
- PERMANENTFLAGS: &4
78
- - *1
79
- UIDVALIDITY: &5
80
- - 1
81
- EXISTS: &6
82
- - 77
83
- - 78
84
- - 79
85
- RECENT: &7
86
- - 0
87
- UIDNEXT: &8
88
- - 81
89
- HIGHESTMODSEQ: &9
90
- - '5211'
91
- IDLE-19f5c646015cf36d0561f86266edaa83:
92
- - - :return
93
- - !ruby/struct:Net::IMAP::TaggedResponse
94
- tag: RUBY0003
95
- name: OK
96
- data: !ruby/struct:Net::IMAP::ResponseText
97
- code:
98
- text: IDLE terminated (Success)
99
- raw_data: "RUBY0003 OK IDLE terminated (Success)\r\n"
100
- - FLAGS: *2
101
- OK: *3
102
- PERMANENTFLAGS: *4
103
- UIDVALIDITY: *5
104
- EXISTS: *6
105
- RECENT: *7
106
- UIDNEXT: *8
107
- HIGHESTMODSEQ: *9
108
- - - !ruby/struct:Net::IMAP::ContinuationRequest
109
- data: !ruby/struct:Net::IMAP::ResponseText
110
- code:
111
- text: idling
112
- raw_data: "+ idling\r\n"
113
- - !ruby/struct:Net::IMAP::UntaggedResponse
114
- name: EXISTS
115
- data: 78
116
- raw_data: "* 78 EXISTS\r\n"
117
- - - :return
118
- - !ruby/struct:Net::IMAP::TaggedResponse
119
- tag: RUBY0004
120
- name: OK
121
- data: !ruby/struct:Net::IMAP::ResponseText
122
- code:
123
- text: IDLE terminated (Success)
124
- raw_data: "RUBY0004 OK IDLE terminated (Success)\r\n"
125
- - FLAGS: *2
126
- OK: *3
127
- PERMANENTFLAGS: *4
128
- UIDVALIDITY: *5
129
- EXISTS: *6
130
- RECENT: *7
131
- UIDNEXT: *8
132
- HIGHESTMODSEQ: *9
133
- - - !ruby/struct:Net::IMAP::ContinuationRequest
134
- data: !ruby/struct:Net::IMAP::ResponseText
135
- code:
136
- text: idling
137
- raw_data: "+ idling\r\n"
138
- - !ruby/struct:Net::IMAP::UntaggedResponse
139
- name: EXISTS
140
- data: 79
141
- raw_data: "* 79 EXISTS\r\n"
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"
44
+ SELECT-505f013d922af4caf157dc91d6b45a60:
45
+ - - :return
46
+ - !ruby/struct:Net::IMAP::TaggedResponse
47
+ tag: RUBY0002
48
+ name: OK
49
+ data: &9 !ruby/struct:Net::IMAP::ResponseText
50
+ code: !ruby/struct:Net::IMAP::ResponseCode
51
+ name: READ-WRITE
52
+ data:
53
+ text: " INBOX selected. (Success)"
54
+ raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
55
+ - FLAGS: &10
56
+ - &4
57
+ - :Answered
58
+ - :Flagged
59
+ - :Draft
60
+ - :Deleted
61
+ - :Seen
62
+ - "$NotPhishing"
63
+ - "$Phishing"
64
+ OK: &11
65
+ - &5 !ruby/struct:Net::IMAP::ResponseText
66
+ code: !ruby/struct:Net::IMAP::ResponseCode
67
+ name: PERMANENTFLAGS
68
+ data: &3
69
+ - :Answered
70
+ - :Flagged
71
+ - :Draft
72
+ - :Deleted
73
+ - :Seen
74
+ - "$NotPhishing"
75
+ - "$Phishing"
76
+ - :*
77
+ text: " Flags permitted."
78
+ - &6 !ruby/struct:Net::IMAP::ResponseText
79
+ code: !ruby/struct:Net::IMAP::ResponseCode
80
+ name: UIDVALIDITY
81
+ data: 1
82
+ text: " UIDs valid."
83
+ - &7 !ruby/struct:Net::IMAP::ResponseText
84
+ code: !ruby/struct:Net::IMAP::ResponseCode
85
+ name: UIDNEXT
86
+ data: 415
87
+ text: " Predicted next UID."
88
+ - &8 !ruby/struct:Net::IMAP::ResponseText
89
+ code: !ruby/struct:Net::IMAP::ResponseCode
90
+ name: HIGHESTMODSEQ
91
+ data: '25192'
92
+ text: ''
93
+ PERMANENTFLAGS: &12
94
+ - *3
95
+ UIDVALIDITY: &13
96
+ - 1
97
+ EXISTS: &14
98
+ - 401
99
+ - 402
100
+ - 403
101
+ RECENT: &15
102
+ - 0
103
+ UIDNEXT: &16
104
+ - 415
105
+ HIGHESTMODSEQ: &17
106
+ - '25192'
107
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
108
+ name: FLAGS
109
+ data: *4
110
+ raw_data: "* FLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing
111
+ $Phishing)\r\n"
112
+ - !ruby/struct:Net::IMAP::UntaggedResponse
113
+ name: OK
114
+ data: *5
115
+ raw_data: "* OK [PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen
116
+ $NotPhishing $Phishing \\*)] Flags permitted.\r\n"
117
+ - !ruby/struct:Net::IMAP::UntaggedResponse
118
+ name: OK
119
+ data: *6
120
+ raw_data: "* OK [UIDVALIDITY 1] UIDs valid.\r\n"
121
+ - !ruby/struct:Net::IMAP::UntaggedResponse
122
+ name: EXISTS
123
+ data: 401
124
+ raw_data: "* 401 EXISTS\r\n"
125
+ - !ruby/struct:Net::IMAP::UntaggedResponse
126
+ name: RECENT
127
+ data: 0
128
+ raw_data: "* 0 RECENT\r\n"
129
+ - !ruby/struct:Net::IMAP::UntaggedResponse
130
+ name: OK
131
+ data: *7
132
+ raw_data: "* OK [UIDNEXT 415] Predicted next UID.\r\n"
133
+ - !ruby/struct:Net::IMAP::UntaggedResponse
134
+ name: OK
135
+ data: *8
136
+ raw_data: "* OK [HIGHESTMODSEQ 25192]\r\n"
137
+ - !ruby/struct:Net::IMAP::TaggedResponse
138
+ tag: RUBY0002
139
+ name: OK
140
+ data: *9
141
+ raw_data: "RUBY0002 OK [READ-WRITE] INBOX selected. (Success)\r\n"
142
+ IDLE-19f5c646015cf36d0561f86266edaa83:
143
+ - - :return
144
+ - !ruby/struct:Net::IMAP::TaggedResponse
145
+ tag: RUBY0003
146
+ name: OK
147
+ data: !ruby/struct:Net::IMAP::ResponseText
148
+ code:
149
+ text: IDLE terminated (Success)
150
+ raw_data: "RUBY0003 OK IDLE terminated (Success)\r\n"
151
+ - FLAGS: *10
152
+ OK: *11
153
+ PERMANENTFLAGS: *12
154
+ UIDVALIDITY: *13
155
+ EXISTS: *14
156
+ RECENT: *15
157
+ UIDNEXT: *16
158
+ HIGHESTMODSEQ: *17
159
+ - - !ruby/struct:Net::IMAP::ContinuationRequest
160
+ data: !ruby/struct:Net::IMAP::ResponseText
161
+ code:
162
+ text: idling
163
+ raw_data: "+ idling\r\n"
164
+ - !ruby/struct:Net::IMAP::UntaggedResponse
165
+ name: EXISTS
166
+ data: 402
167
+ raw_data: "* 402 EXISTS\r\n"
168
+ - - :return
169
+ - !ruby/struct:Net::IMAP::TaggedResponse
170
+ tag: RUBY0004
171
+ name: OK
172
+ data: !ruby/struct:Net::IMAP::ResponseText
173
+ code:
174
+ text: IDLE terminated (Success)
175
+ raw_data: "RUBY0004 OK IDLE terminated (Success)\r\n"
176
+ - FLAGS: *10
177
+ OK: *11
178
+ PERMANENTFLAGS: *12
179
+ UIDVALIDITY: *13
180
+ EXISTS: *14
181
+ RECENT: *15
182
+ UIDNEXT: *16
183
+ HIGHESTMODSEQ: *17
184
+ - - !ruby/struct:Net::IMAP::ContinuationRequest
185
+ data: !ruby/struct:Net::IMAP::ResponseText
186
+ code:
187
+ text: idling
188
+ raw_data: "+ idling\r\n"
189
+ - !ruby/struct:Net::IMAP::UntaggedResponse
190
+ name: EXISTS
191
+ data: 403
192
+ raw_data: "* 403 EXISTS\r\n"
193
+ LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
194
+ - - :return
195
+ - !ruby/struct:Net::IMAP::TaggedResponse
196
+ tag: RUBY0005
197
+ name: OK
198
+ data: !ruby/struct:Net::IMAP::ResponseText
199
+ code:
200
+ text: 73 good day (Success)
201
+ raw_data: "RUBY0005 OK 73 good day (Success)\r\n"
202
+ - FLAGS: *10
203
+ OK: *11
204
+ PERMANENTFLAGS: *12
205
+ UIDVALIDITY: *13
206
+ EXISTS: *14
207
+ RECENT: *15
208
+ UIDNEXT: *16
209
+ HIGHESTMODSEQ: *17
210
+ BYE:
211
+ - &18 !ruby/struct:Net::IMAP::ResponseText
212
+ code:
213
+ text: LOGOUT Requested
214
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
215
+ name: BYE
216
+ data: *18
217
+ raw_data: "* BYE LOGOUT Requested\r\n"