litmus-instant 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ci.yml +29 -0
  3. data/.gitignore +0 -2
  4. data/.ruby-version +1 -1
  5. data/Gemfile.lock +94 -0
  6. data/LICENSE.txt +1 -1
  7. data/README.md +0 -2
  8. data/fixtures/vcr_cassettes/Litmus_Instant/Litmus_Instant_Client_provides_Litmus_Instant_class_methods_as_instance_methods.yml +165 -49
  9. data/fixtures/vcr_cassettes/Litmus_Instant/Litmus_Instant_Client_uses_its_own_config.yml +18 -94
  10. data/fixtures/vcr_cassettes/Litmus_Instant/client_configurations/returns_a_Hash_of_clients_and_their_available_options.yml +1032 -141
  11. data/fixtures/vcr_cassettes/Litmus_Instant/clients/returns_an_array_of_client_names.yml +83 -25
  12. data/fixtures/vcr_cassettes/Litmus_Instant/create_email/authenticated_with_invalid_email_Hash_raise_a_request_error.yml +8 -43
  13. data/fixtures/vcr_cassettes/Litmus_Instant/create_email/authenticated_with_valid_email_Hash_optional_end_user_id_is_relayed.yml +9 -49
  14. data/fixtures/vcr_cassettes/Litmus_Instant/create_email/authenticated_with_valid_email_Hash_prerequest_configurations_is_relayed.yml +9 -60
  15. data/fixtures/vcr_cassettes/Litmus_Instant/create_email/authenticated_with_valid_email_Hash_response_.yml +9 -48
  16. data/fixtures/vcr_cassettes/Litmus_Instant/create_email/unauthenticated_raises_an_authentication_error.yml +9 -6
  17. data/fixtures/vcr_cassettes/Litmus_Instant/get_preview/raises_NotFound_for_an_expired_email_guid.yml +9 -6
  18. data/fixtures/vcr_cassettes/Litmus_Instant/get_preview/raises_RequestError_for_an_invalid_client.yml +16 -90
  19. data/fixtures/vcr_cassettes/Litmus_Instant/get_preview/raises_RequestError_for_an_invalid_email_guid.yml +9 -6
  20. data/fixtures/vcr_cassettes/Litmus_Instant/get_preview/returns_a_Hash_of_the_image_types.yml +19 -99
  21. data/fixtures/vcr_cassettes/Litmus_Instant/get_preview/supports_optional_capture_configuration.yml +19 -99
  22. data/fixtures/vcr_cassettes/Litmus_Instant/prefetch_previews/raises_RequestError_for_an_invalid_email_guid.yml +9 -6
  23. data/fixtures/vcr_cassettes/Litmus_Instant/prefetch_previews/raises_RequestError_if_any_invalid_configurations_are_present.yml +16 -90
  24. data/fixtures/vcr_cassettes/Litmus_Instant/prefetch_previews/responds_with_an_array_of_the_requested_configurations.yml +16 -99
  25. data/lib/litmus/instant/version.rb +1 -1
  26. data/litmus-instant.gemspec +3 -3
  27. metadata +15 -14
@@ -11,6 +11,10 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  response:
15
19
  status:
16
20
  code: 200
@@ -19,13 +23,13 @@ http_interactions:
19
23
  Server:
20
24
  - nginx
21
25
  Date:
22
- - Mon, 20 Jun 2016 11:43:48 GMT
26
+ - Wed, 10 Nov 2021 14:36:32 GMT
23
27
  Content-Type:
24
28
  - application/json;charset=utf-8
25
29
  Content-Length:
26
- - '845'
27
- Connection:
28
- - keep-alive
30
+ - '1880'
31
+ Vary:
32
+ - Origin
29
33
  Strict-Transport-Security:
30
34
  - max-age=3600; includeSubdomains; preload
31
35
  X-Frame-Options:
@@ -36,62 +40,116 @@ http_interactions:
36
40
  encoding: UTF-8
37
41
  string: |-
38
42
  [
39
- "ANDROID4",
43
+ "ANDROID10GMAILAPP",
44
+ "ANDROID10GMAILAPPDARK",
45
+ "ANDROID6",
46
+ "ANDROID71GMAILAPP",
47
+ "ANDROID8GMAILAPP",
48
+ "ANDROID9GMAILAPP",
40
49
  "ANDROIDGMAILAPP",
50
+ "ANDROIDGMAILIMAP",
51
+ "ANDROIDOUTLOOK",
52
+ "ANDROIDSAMSUNG6",
53
+ "ANDROIDSAMSUNG7",
41
54
  "AOLONLINE",
42
- "APPMAIL8",
43
- "APPMAIL9",
55
+ "APPMAIL13",
56
+ "APPMAIL13DARK",
57
+ "APPMAIL14",
58
+ "APPMAIL14DARK",
59
+ "APPMAIL15",
60
+ "APPMAIL15DARK",
44
61
  "CHROMEAOLONLINE",
62
+ "CHROMECOMCAST",
63
+ "CHROMEFREENETDE",
45
64
  "CHROMEGMAILNEW",
46
65
  "CHROMEGMXDE",
47
66
  "CHROMEGOOGLEAPPS",
48
- "CHROMEGOOGLEINBOX",
67
+ "CHROMEMAILRU",
49
68
  "CHROMEOFFICE365",
50
69
  "CHROMEOUTLOOKCOM",
70
+ "CHROMEOUTLOOKCOMDARK",
71
+ "CHROMETONLINEDE",
51
72
  "CHROMEWEBDE",
52
73
  "CHROMEYAHOO",
53
74
  "COLORBLIND",
75
+ "COMCAST",
54
76
  "FFAOLONLINE",
77
+ "FFCOMCAST",
78
+ "FFFREENETDE",
55
79
  "FFGMAILNEW",
56
80
  "FFGMXDE",
57
81
  "FFGOOGLEAPPS",
58
- "FFGOOGLEINBOX",
82
+ "FFMAILRU",
59
83
  "FFOFFICE365",
60
84
  "FFOUTLOOKCOM",
85
+ "FFOUTLOOKCOMDARK",
86
+ "FFTONLINEDE",
61
87
  "FFWEBDE",
62
88
  "FFYAHOO",
89
+ "FREENETDE",
90
+ "GMAILIOS",
91
+ "GMAILIOSDARK",
63
92
  "GMAILNEW",
64
93
  "GMXDE",
65
94
  "GOOGLEAPPS",
66
95
  "IPAD",
67
- "IPADMINI",
68
- "IPHONE5S",
69
- "IPHONE5SIOS8",
70
- "IPHONE6",
71
- "IPHONE6PLUS",
72
- "IPHONE6S",
73
- "IPHONE6SPLUS",
74
- "NOTES7",
75
- "NOTES8",
96
+ "IPADAIRGEN4",
97
+ "IPADGEN7",
98
+ "IPADGEN7DARK",
99
+ "IPADMINI6",
100
+ "IPADMINI6DARK",
101
+ "IPADPRO10P5IN",
102
+ "IPADPRO11IN",
103
+ "IPADPRO13IN",
104
+ "IPHONE11",
105
+ "IPHONE11IOS14",
106
+ "IPHONE11IOS14DARK",
107
+ "IPHONE11PRO",
108
+ "IPHONE11PRODARK",
109
+ "IPHONE11PROMAX",
110
+ "IPHONE12",
111
+ "IPHONE12DARK",
112
+ "IPHONE12MINI",
113
+ "IPHONE12MINIDARK",
114
+ "IPHONE12PROMAX",
115
+ "IPHONE12PROMAXDARK",
116
+ "IPHONE13",
117
+ "IPHONE13DARK",
118
+ "IPHONE13PROMAX",
119
+ "IPHONE13PROMAXDARK",
120
+ "IPHONE8",
121
+ "IPHONE8PLUS",
122
+ "IPHONESE",
123
+ "IPHONESE2020",
124
+ "IPHONEXR",
125
+ "IPHONEXS",
126
+ "IPHONEXSMAX",
127
+ "MAILRU",
128
+ "NOTES10",
76
129
  "NOTES85",
77
130
  "NOTES9",
78
131
  "OFFICE365",
79
- "OL2000",
80
- "OL2002",
81
- "OL2003",
82
132
  "OL2007",
83
133
  "OL2010",
84
- "OL2011",
85
134
  "OL2013",
86
135
  "OL2013DPI120",
87
136
  "OL2015",
88
137
  "OL2016",
138
+ "OL2016DPI120",
139
+ "OL2019",
140
+ "OL2019DPI120",
141
+ "OL2019MAC",
142
+ "OL2019MACDARK",
143
+ "OL365",
144
+ "OL365DARK",
89
145
  "OUTLOOKCOM",
146
+ "OUTLOOKIOS",
90
147
  "PLAINTEXT",
91
148
  "THUNDERBIRDLATEST",
149
+ "TONLINEDE",
92
150
  "WEBDE",
151
+ "WINDOWS10MAIL",
93
152
  "YAHOO"
94
153
  ]
95
- http_version:
96
- recorded_at: Mon, 20 Jun 2016 11:43:51 GMT
97
- recorded_with: VCR 2.9.3
154
+ recorded_at: Wed, 10 Nov 2021 14:36:32 GMT
155
+ recorded_with: VCR 6.0.0
@@ -11,8 +11,12 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  Authorization:
15
- - Basic Y3hkNHR1c3F3b2tnZ2dseGl6ZDl2cDd6bXV4dmo2eG95a2UxOg==
19
+ - Basic <ENCODED_API_KEY>
16
20
  response:
17
21
  status:
18
22
  code: 400
@@ -21,49 +25,11 @@ http_interactions:
21
25
  Server:
22
26
  - nginx
23
27
  Date:
24
- - Mon, 20 Jun 2016 11:43:48 GMT
28
+ - Wed, 10 Nov 2021 14:36:31 GMT
25
29
  Content-Type:
26
30
  - application/json;charset=utf-8
27
31
  Content-Length:
28
32
  - '122'
29
- Connection:
30
- - keep-alive
31
- body:
32
- encoding: UTF-8
33
- string: |-
34
- {
35
- "status": 400,
36
- "title": "Bad Request",
37
- "description": "One of 'html_text','plain_text','raw_source' is required"
38
- }
39
- http_version:
40
- recorded_at: Mon, 20 Jun 2016 11:43:50 GMT
41
- - request:
42
- method: post
43
- uri: https://<API_KEY>:@instant-api.litmus.com/v1/emails
44
- body:
45
- encoding: UTF-8
46
- string: '{"nyan_text":"Miow världen!"}'
47
- headers:
48
- Content-Type:
49
- - application/json
50
- Accept:
51
- - application/json
52
- response:
53
- status:
54
- code: 400
55
- message: Bad Request
56
- headers:
57
- Server:
58
- - nginx
59
- Date:
60
- - Fri, 21 Jul 2017 12:59:16 GMT
61
- Content-Type:
62
- - application/json;charset=utf-8
63
- Content-Length:
64
- - '122'
65
- Connection:
66
- - keep-alive
67
33
  Vary:
68
34
  - Origin
69
35
  body:
@@ -74,6 +40,5 @@ http_interactions:
74
40
  "title": "Bad Request",
75
41
  "description": "One of 'html_text','plain_text','raw_source' is required"
76
42
  }
77
- http_version:
78
- recorded_at: Fri, 21 Jul 2017 13:01:49 GMT
79
- recorded_with: VCR 2.9.3
43
+ recorded_at: Wed, 10 Nov 2021 14:36:32 GMT
44
+ recorded_with: VCR 6.0.0
@@ -11,8 +11,12 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  Authorization:
15
- - Basic Y3hkNHR1c3F3b2tnZ2dseGl6ZDl2cDd6bXV4dmo2eG95a2UxOg==
19
+ - Basic <ENCODED_API_KEY>
16
20
  response:
17
21
  status:
18
22
  code: 200
@@ -21,54 +25,11 @@ http_interactions:
21
25
  Server:
22
26
  - nginx
23
27
  Date:
24
- - Mon, 20 Jun 2016 11:43:46 GMT
28
+ - Wed, 10 Nov 2021 14:36:29 GMT
25
29
  Content-Type:
26
30
  - application/json;charset=utf-8
27
31
  Content-Length:
28
32
  - '82'
29
- Connection:
30
- - keep-alive
31
- Strict-Transport-Security:
32
- - max-age=3600; includeSubdomains; preload
33
- X-Frame-Options:
34
- - DENY
35
- X-Content-Type-Options:
36
- - nosniff
37
- body:
38
- encoding: UTF-8
39
- string: |-
40
- {
41
- "email_guid": "7931e543-6ad7-4e51-a0ba-1fa8113db1a3",
42
- "end_user_id": "bob"
43
- }
44
- http_version:
45
- recorded_at: Mon, 20 Jun 2016 11:43:49 GMT
46
- - request:
47
- method: post
48
- uri: https://<API_KEY>:@instant-api.litmus.com/v1/emails
49
- body:
50
- encoding: UTF-8
51
- string: '{"plain_text":"Hej världen!","end_user_id":"bob"}'
52
- headers:
53
- Content-Type:
54
- - application/json
55
- Accept:
56
- - application/json
57
- response:
58
- status:
59
- code: 200
60
- message: OK
61
- headers:
62
- Server:
63
- - nginx
64
- Date:
65
- - Fri, 21 Jul 2017 12:59:15 GMT
66
- Content-Type:
67
- - application/json;charset=utf-8
68
- Content-Length:
69
- - '82'
70
- Connection:
71
- - keep-alive
72
33
  Vary:
73
34
  - Origin
74
35
  Strict-Transport-Security:
@@ -81,9 +42,8 @@ http_interactions:
81
42
  encoding: UTF-8
82
43
  string: |-
83
44
  {
84
- "email_guid": "b60dac41-85ae-4abb-b27a-06f905fad6a2",
45
+ "email_guid": "73462dba-2038-4b8a-b27c-09356c83066a",
85
46
  "end_user_id": "bob"
86
47
  }
87
- http_version:
88
- recorded_at: Fri, 21 Jul 2017 13:01:48 GMT
89
- recorded_with: VCR 2.9.3
48
+ recorded_at: Wed, 10 Nov 2021 14:36:29 GMT
49
+ recorded_with: VCR 6.0.0
@@ -11,8 +11,12 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  Authorization:
15
- - Basic Y3hkNHR1c3F3b2tnZ2dseGl6ZDl2cDd6bXV4dmo2eG95a2UxOg==
19
+ - Basic <ENCODED_API_KEY>
16
20
  response:
17
21
  status:
18
22
  code: 200
@@ -21,65 +25,11 @@ http_interactions:
21
25
  Server:
22
26
  - nginx
23
27
  Date:
24
- - Mon, 20 Jun 2016 11:43:47 GMT
28
+ - Wed, 10 Nov 2021 14:36:31 GMT
25
29
  Content-Type:
26
30
  - application/json;charset=utf-8
27
31
  Content-Length:
28
32
  - '280'
29
- Connection:
30
- - keep-alive
31
- Strict-Transport-Security:
32
- - max-age=3600; includeSubdomains; preload
33
- X-Frame-Options:
34
- - DENY
35
- X-Content-Type-Options:
36
- - nosniff
37
- body:
38
- encoding: UTF-8
39
- string: |-
40
- {
41
- "email_guid": "7931e543-6ad7-4e51-a0ba-1fa8113db1a3",
42
- "configurations": [
43
- {
44
- "orientation": "vertical",
45
- "images": "allowed",
46
- "client": "OL2010"
47
- },
48
- {
49
- "orientation": "vertical",
50
- "images": "blocked",
51
- "client": "OL2013"
52
- }
53
- ]
54
- }
55
- http_version:
56
- recorded_at: Mon, 20 Jun 2016 11:43:49 GMT
57
- - request:
58
- method: post
59
- uri: https://<API_KEY>:@instant-api.litmus.com/v1/emails
60
- body:
61
- encoding: UTF-8
62
- string: '{"plain_text":"Hej världen!","configurations":[{"client":"OL2010"},{"client":"OL2013","images":"blocked"}]}'
63
- headers:
64
- Content-Type:
65
- - application/json
66
- Accept:
67
- - application/json
68
- response:
69
- status:
70
- code: 200
71
- message: OK
72
- headers:
73
- Server:
74
- - nginx
75
- Date:
76
- - Fri, 21 Jul 2017 12:59:16 GMT
77
- Content-Type:
78
- - application/json;charset=utf-8
79
- Content-Length:
80
- - '280'
81
- Connection:
82
- - keep-alive
83
33
  Vary:
84
34
  - Origin
85
35
  Strict-Transport-Security:
@@ -92,7 +42,7 @@ http_interactions:
92
42
  encoding: UTF-8
93
43
  string: |-
94
44
  {
95
- "email_guid": "b60dac41-85ae-4abb-b27a-06f905fad6a2",
45
+ "email_guid": "73462dba-2038-4b8a-b27c-09356c83066a",
96
46
  "configurations": [
97
47
  {
98
48
  "orientation": "vertical",
@@ -106,6 +56,5 @@ http_interactions:
106
56
  }
107
57
  ]
108
58
  }
109
- http_version:
110
- recorded_at: Fri, 21 Jul 2017 13:01:49 GMT
111
- recorded_with: VCR 2.9.3
59
+ recorded_at: Wed, 10 Nov 2021 14:36:31 GMT
60
+ recorded_with: VCR 6.0.0
@@ -11,8 +11,12 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  Authorization:
15
- - Basic Y3hkNHR1c3F3b2tnZ2dseGl6ZDl2cDd6bXV4dmo2eG95a2UxOg==
19
+ - Basic <ENCODED_API_KEY>
16
20
  response:
17
21
  status:
18
22
  code: 200
@@ -21,53 +25,11 @@ http_interactions:
21
25
  Server:
22
26
  - nginx
23
27
  Date:
24
- - Mon, 20 Jun 2016 11:43:46 GMT
28
+ - Wed, 10 Nov 2021 14:36:28 GMT
25
29
  Content-Type:
26
30
  - application/json;charset=utf-8
27
31
  Content-Length:
28
32
  - '58'
29
- Connection:
30
- - keep-alive
31
- Strict-Transport-Security:
32
- - max-age=3600; includeSubdomains; preload
33
- X-Frame-Options:
34
- - DENY
35
- X-Content-Type-Options:
36
- - nosniff
37
- body:
38
- encoding: UTF-8
39
- string: |-
40
- {
41
- "email_guid": "7931e543-6ad7-4e51-a0ba-1fa8113db1a3"
42
- }
43
- http_version:
44
- recorded_at: Mon, 20 Jun 2016 11:43:48 GMT
45
- - request:
46
- method: post
47
- uri: https://<API_KEY>:@instant-api.litmus.com/v1/emails
48
- body:
49
- encoding: UTF-8
50
- string: '{"plain_text":"Hej världen!"}'
51
- headers:
52
- Content-Type:
53
- - application/json
54
- Accept:
55
- - application/json
56
- response:
57
- status:
58
- code: 200
59
- message: OK
60
- headers:
61
- Server:
62
- - nginx
63
- Date:
64
- - Fri, 21 Jul 2017 12:59:14 GMT
65
- Content-Type:
66
- - application/json;charset=utf-8
67
- Content-Length:
68
- - '58'
69
- Connection:
70
- - keep-alive
71
33
  Vary:
72
34
  - Origin
73
35
  Strict-Transport-Security:
@@ -80,8 +42,7 @@ http_interactions:
80
42
  encoding: UTF-8
81
43
  string: |-
82
44
  {
83
- "email_guid": "b60dac41-85ae-4abb-b27a-06f905fad6a2"
45
+ "email_guid": "2583f050-3123-4e39-a7f9-b85397ebfb7a"
84
46
  }
85
- http_version:
86
- recorded_at: Fri, 21 Jul 2017 13:01:47 GMT
87
- recorded_with: VCR 2.9.3
47
+ recorded_at: Wed, 10 Nov 2021 14:36:28 GMT
48
+ recorded_with: VCR 6.0.0
@@ -11,6 +11,10 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  response:
15
19
  status:
16
20
  code: 401
@@ -19,15 +23,15 @@ http_interactions:
19
23
  Server:
20
24
  - nginx
21
25
  Date:
22
- - Mon, 20 Jun 2016 11:43:45 GMT
26
+ - Wed, 10 Nov 2021 14:36:18 GMT
23
27
  Content-Type:
24
28
  - application/json;charset=utf-8
25
29
  Content-Length:
26
30
  - '328'
27
- Connection:
28
- - keep-alive
29
31
  Www-Authenticate:
30
32
  - Basic realm="Litmus Instant API"
33
+ Vary:
34
+ - Origin
31
35
  body:
32
36
  encoding: UTF-8
33
37
  string: |-
@@ -36,6 +40,5 @@ http_interactions:
36
40
  "title": "Unauthorized",
37
41
  "description": "API Authentication credentials were missing or incorrect. Make sure the credentials you're making the request with match those you were provided. If you're stuck, please email resellers@litmus.com and we'll have a Support Engineer reach out as soon as possible."
38
42
  }
39
- http_version:
40
- recorded_at: Mon, 20 Jun 2016 11:43:47 GMT
41
- recorded_with: VCR 2.9.3
43
+ recorded_at: Wed, 10 Nov 2021 14:36:18 GMT
44
+ recorded_with: VCR 6.0.0
@@ -11,6 +11,10 @@ http_interactions:
11
11
  - application/json
12
12
  Accept:
13
13
  - application/json
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ User-Agent:
17
+ - Ruby
14
18
  response:
15
19
  status:
16
20
  code: 404
@@ -19,15 +23,15 @@ http_interactions:
19
23
  Server:
20
24
  - nginx
21
25
  Date:
22
- - Mon, 20 Jun 2016 11:43:51 GMT
26
+ - Wed, 10 Nov 2021 14:36:37 GMT
23
27
  Content-Type:
24
28
  - application/json;charset=utf-8
25
29
  Content-Length:
26
30
  - '43'
27
- Connection:
28
- - keep-alive
29
31
  X-Cascade:
30
32
  - pass
33
+ Vary:
34
+ - Origin
31
35
  body:
32
36
  encoding: UTF-8
33
37
  string: |-
@@ -35,6 +39,5 @@ http_interactions:
35
39
  "status": 404,
36
40
  "title": "Not found"
37
41
  }
38
- http_version:
39
- recorded_at: Mon, 20 Jun 2016 11:43:53 GMT
40
- recorded_with: VCR 2.9.3
42
+ recorded_at: Wed, 10 Nov 2021 14:36:37 GMT
43
+ recorded_with: VCR 6.0.0