gmail 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +27 -27
  3. data/.rspec +1 -1
  4. data/.rubocop.yml +13 -13
  5. data/.rubocop_todo.yml +239 -239
  6. data/.travis.yml +19 -19
  7. data/CHANGELOG.md +145 -139
  8. data/Gemfile +3 -3
  9. data/LICENSE +21 -21
  10. data/README.md +355 -354
  11. data/Rakefile +46 -46
  12. data/gmail.gemspec +34 -34
  13. data/lib/gmail.rb +78 -78
  14. data/lib/gmail/client.rb +34 -34
  15. data/lib/gmail/client/base.rb +229 -229
  16. data/lib/gmail/client/plain.rb +24 -24
  17. data/lib/gmail/client/xoauth.rb +68 -68
  18. data/lib/gmail/client/xoauth2.rb +39 -39
  19. data/lib/gmail/imap_extensions.rb +159 -150
  20. data/lib/gmail/labels.rb +79 -79
  21. data/lib/gmail/mailbox.rb +175 -135
  22. data/lib/gmail/message.rb +207 -207
  23. data/lib/gmail/version.rb +3 -3
  24. data/spec/account.yml.example +1 -1
  25. data/spec/account.yml.obfus +2 -2
  26. data/spec/gmail/client/base_spec.rb +5 -5
  27. data/spec/gmail/client/plain_spec.rb +169 -168
  28. data/spec/gmail/client/xoauth2_spec.rb +186 -186
  29. data/spec/gmail/client/xoauth_spec.rb +5 -5
  30. data/spec/gmail/client_spec.rb +5 -5
  31. data/spec/gmail/imap_extensions_spec.rb +47 -12
  32. data/spec/gmail/labels_spec.rb +27 -18
  33. data/spec/gmail/mailbox_spec.rb +84 -47
  34. data/spec/gmail/message_spec.rb +181 -181
  35. data/spec/gmail_spec.rb +39 -39
  36. data/spec/recordings/gmail/_new_connects_with_client_and_give_it_context_when_block_given.yml +28 -28
  37. data/spec/recordings/gmail/_new_connects_with_gmail_service_and_return_valid_connection_object.yml +28 -28
  38. data/spec/recordings/gmail/_new_does_not_raise_error_when_couldn_t_connect_with_given_account.yml +13 -13
  39. data/spec/recordings/gmail/_new_raises_error_when_couldn_t_connect_with_given_account.yml +13 -13
  40. data/spec/recordings/gmail_client_plain/instance/_connection_automatically_logs_in_to_gmail_account_when_it_s_called.yml +42 -42
  41. data/spec/recordings/gmail_client_plain/instance/delivers_inline_composed_email.yml +42 -42
  42. data/spec/recordings/gmail_client_plain/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +13 -13
  43. data/spec/recordings/gmail_client_plain/instance/does_not_raise_error_even_though_gmail_account_is_invalid.yml +13 -13
  44. data/spec/recordings/gmail_client_plain/instance/labels/checks_if_there_is_given_label_defined.yml +196 -196
  45. data/spec/recordings/gmail_client_plain/instance/labels/creates_given_label.yml +151 -151
  46. data/spec/recordings/gmail_client_plain/instance/labels/removes_existing_label.yml +146 -146
  47. data/spec/recordings/gmail_client_plain/instance/labels/returns_list_of_all_available_labels.yml +113 -113
  48. data/spec/recordings/gmail_client_plain/instance/properly_logs_in_to_valid_gmail_account.yml +42 -42
  49. data/spec/recordings/gmail_client_plain/instance/properly_logs_out_from_gmail.yml +42 -42
  50. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox.yml +109 -109
  51. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox_using_block_style.yml +109 -109
  52. data/spec/recordings/gmail_client_plain/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +13 -13
  53. data/spec/recordings/gmail_client_xo_auth2/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +13 -13
  54. data/spec/recordings/gmail_client_xo_auth2/instance/labels/checks_if_there_is_given_label_defined.yml +27 -27
  55. data/spec/recordings/gmail_client_xo_auth2/instance/labels/creates_given_label.yml +39 -39
  56. data/spec/recordings/gmail_client_xo_auth2/instance/labels/removes_existing_label.yml +39 -39
  57. data/spec/recordings/gmail_client_xo_auth2/instance/labels/returns_list_of_all_available_labels.yml +27 -27
  58. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_in_to_valid_gmail_account.yml +15 -15
  59. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_out_from_gmail.yml +15 -15
  60. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox.yml +40 -40
  61. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox_using_block_style.yml +40 -40
  62. data/spec/recordings/gmail_client_xo_auth2/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +13 -13
  63. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/all/localizes_into_the_appropriate_label.yml +116 -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 +110 -0
  65. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/drafts/localizes_into_the_appropriate_label.yml +116 -116
  66. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/flagged/localizes_into_the_appropriate_label.yml +116 -116
  67. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/important/localizes_into_the_appropriate_label.yml +116 -116
  68. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/inbox/localizes_into_the_appropriate_label.yml +42 -42
  69. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/junk/localizes_into_the_appropriate_label.yml +116 -116
  70. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/sent/localizes_into_the_appropriate_label.yml +116 -116
  71. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/trash/localizes_into_the_appropriate_label.yml +116 -116
  72. data/spec/recordings/gmail_mailbox/instance/counts_all_emails.yml +277 -277
  73. data/spec/recordings/gmail_mailbox/instance/finds_messages.yml +586 -586
  74. data/spec/recordings/gmail_mailbox/instance/waits_once.yml +136 -0
  75. data/spec/recordings/gmail_mailbox/instance/waits_repeatedly.yml +141 -0
  76. data/spec/recordings/gmail_mailbox/instance/waits_with_29-minute_re-issue.yml +136 -0
  77. data/spec/recordings/gmail_mailbox/instance/waits_with_an_unblocked_connection.yml +207 -0
  78. data/spec/recordings/gmail_mailbox/on_initialize/sets_client_and_name.yml +42 -42
  79. data/spec/recordings/gmail_mailbox/on_initialize/works_in_inbox_by_default.yml +42 -42
  80. data/spec/recordings/gmail_message/initialize/sets_prefetch_attrs.yml +578 -578
  81. data/spec/recordings/gmail_message/initialize/sets_uid_and_mailbox.yml +580 -580
  82. data/spec/recordings/gmail_message/instance_methods/deletes_itself.yml +637 -637
  83. data/spec/recordings/gmail_message/instance_methods/marks_itself_read.yml +682 -682
  84. data/spec/recordings/gmail_message/instance_methods/marks_itself_unread.yml +686 -686
  85. data/spec/recordings/gmail_message/instance_methods/moves_from_one_tag_to_other.yml +862 -862
  86. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label.yml +776 -776
  87. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label_with_old_method.yml +776 -776
  88. data/spec/recordings/gmail_message/instance_methods/sets_given_label.yml +690 -690
  89. data/spec/recordings/gmail_message/instance_methods/sets_given_label_with_old_method.yml +691 -691
  90. data/spec/spec_helper.rb +53 -53
  91. data/spec/support/imap_mock.rb +181 -129
  92. data/spec/support/obfuscation.rb +52 -52
  93. metadata +78 -5
@@ -0,0 +1,136 @@
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
@@ -0,0 +1,141 @@
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"
@@ -0,0 +1,136 @@
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: 148
71
+ text: " Predicted next UID."
72
+ - !ruby/struct:Net::IMAP::ResponseText
73
+ code: !ruby/struct:Net::IMAP::ResponseCode
74
+ name: HIGHESTMODSEQ
75
+ data: '9406'
76
+ text: ''
77
+ PERMANENTFLAGS: &4
78
+ - *1
79
+ UIDVALIDITY: &5
80
+ - 1
81
+ EXISTS: &6
82
+ - 12
83
+ - 13
84
+ RECENT: &7
85
+ - 0
86
+ UIDNEXT: &8
87
+ - 148
88
+ HIGHESTMODSEQ: &9
89
+ - '9406'
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
+ - - :return
113
+ - !ruby/struct:Net::IMAP::TaggedResponse
114
+ tag: RUBY0004
115
+ name: OK
116
+ data: !ruby/struct:Net::IMAP::ResponseText
117
+ code:
118
+ text: IDLE terminated (Success)
119
+ raw_data: "RUBY0004 OK IDLE terminated (Success)\r\n"
120
+ - FLAGS: *2
121
+ OK: *3
122
+ PERMANENTFLAGS: *4
123
+ UIDVALIDITY: *5
124
+ EXISTS: *6
125
+ RECENT: *7
126
+ UIDNEXT: *8
127
+ HIGHESTMODSEQ: *9
128
+ - - !ruby/struct:Net::IMAP::ContinuationRequest
129
+ data: !ruby/struct:Net::IMAP::ResponseText
130
+ code:
131
+ text: idling
132
+ raw_data: "+ idling\r\n"
133
+ - !ruby/struct:Net::IMAP::UntaggedResponse
134
+ name: EXISTS
135
+ data: 13
136
+ raw_data: "* 13 EXISTS\r\n"
@@ -0,0 +1,207 @@
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: 77
71
+ text: " Predicted next UID."
72
+ - !ruby/struct:Net::IMAP::ResponseText
73
+ code: !ruby/struct:Net::IMAP::ResponseCode
74
+ name: HIGHESTMODSEQ
75
+ data: '4954'
76
+ text: ''
77
+ PERMANENTFLAGS: &4
78
+ - *1
79
+ UIDVALIDITY: &5
80
+ - 1
81
+ EXISTS: &6
82
+ - 73
83
+ - 74
84
+ RECENT: &7
85
+ - 0
86
+ UIDNEXT: &8
87
+ - 77
88
+ HIGHESTMODSEQ: &9
89
+ - '4954'
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: 74
115
+ raw_data: "* 74 EXISTS\r\n"
116
+ UID SEARCH-b19658413e2b63d2bac9c290a67c2cb3:
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: SEARCH completed (Success)
124
+ raw_data: "RUBY0004 OK SEARCH completed (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
+ SEARCH:
134
+ - - 4
135
+ - 5
136
+ - 6
137
+ - 7
138
+ - 8
139
+ - 9
140
+ - 10
141
+ - 11
142
+ - 12
143
+ - 13
144
+ - 14
145
+ - 15
146
+ - 16
147
+ - 17
148
+ - 18
149
+ - 19
150
+ - 20
151
+ - 21
152
+ - 22
153
+ - 23
154
+ - 24
155
+ - 25
156
+ - 26
157
+ - 27
158
+ - 28
159
+ - 29
160
+ - 30
161
+ - 31
162
+ - 32
163
+ - 33
164
+ - 34
165
+ - 35
166
+ - 36
167
+ - 37
168
+ - 38
169
+ - 39
170
+ - 40
171
+ - 41
172
+ - 42
173
+ - 43
174
+ - 44
175
+ - 45
176
+ - 46
177
+ - 47
178
+ - 48
179
+ - 49
180
+ - 50
181
+ - 51
182
+ - 52
183
+ - 53
184
+ - 54
185
+ - 55
186
+ - 56
187
+ - 57
188
+ - 58
189
+ - 59
190
+ - 60
191
+ - 61
192
+ - 62
193
+ - 63
194
+ - 64
195
+ - 65
196
+ - 66
197
+ - 67
198
+ - 68
199
+ - 69
200
+ - 70
201
+ - 71
202
+ - 72
203
+ - 73
204
+ - 74
205
+ - 75
206
+ - 76
207
+ - 77