mailersend-ruby 2.0.3 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/main.yml +6 -6
  3. data/.github/workflows/publish_gem.yml +4 -4
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +1 -1
  6. data/CHANGELOG.md +7 -0
  7. data/Gemfile +7 -3
  8. data/README.md +10 -1
  9. data/fixtures/activity/activity_get_activity.yml +61 -0
  10. data/fixtures/api_quota/api_quota_get.yml +51 -0
  11. data/fixtures/bulk_email/bulk_email_send.yml +54 -0
  12. data/fixtures/bulk_email/bulk_email_status.yml +53 -0
  13. data/fixtures/domains/domains_add.yml +55 -0
  14. data/fixtures/domains/domains_delete.yml +47 -0
  15. data/fixtures/domains/domains_dns.yml +52 -0
  16. data/fixtures/domains/domains_list.yml +63 -0
  17. data/fixtures/domains/domains_recipients.yml +51 -0
  18. data/fixtures/domains/domains_settings.yml +55 -0
  19. data/fixtures/domains/domains_single.yml +53 -0
  20. data/fixtures/domains/domains_verify.yml +51 -0
  21. data/fixtures/email/email_send.yml +56 -0
  22. data/fixtures/inbound_routing/inbound_routing_delete.yml +47 -0
  23. data/fixtures/inbound_routing/inbound_routing_list.yml +53 -0
  24. data/fixtures/inbound_routing/inbound_routing_single.yml +51 -0
  25. data/fixtures/messages/messages_list_messages.yml +51 -0
  26. data/fixtures/messages/messages_single_message.yml +54 -0
  27. data/fixtures/recipients/recipients_delete.yml +47 -0
  28. data/fixtures/recipients/recipients_list.yml +51 -0
  29. data/fixtures/recipients/recipients_single.yml +51 -0
  30. data/fixtures/scheduled_messages/scheduled_messages_delete.yml +34 -0
  31. data/fixtures/scheduled_messages/scheduled_messages_get_list.yml +53 -0
  32. data/fixtures/scheduled_messages/scheduled_messages_get_single.yml +34 -0
  33. data/fixtures/sms_activity/sms_activity_list.yml +51 -0
  34. data/fixtures/sms_inbounds/sms_inbounds_add_sms_inbound_route.yml +53 -0
  35. data/fixtures/sms_inbounds/sms_inbounds_delete_sms_inbound_route.yml +47 -0
  36. data/fixtures/sms_inbounds/sms_inbounds_get_sms_inbound_route.yml +51 -0
  37. data/fixtures/sms_inbounds/sms_inbounds_list_sms_inbounds.yml +53 -0
  38. data/fixtures/sms_inbounds/sms_inbounds_update_sms_inbound_route.yml +53 -0
  39. data/fixtures/sms_messages/sms_messages_list_sms_messages.yml +56 -0
  40. data/fixtures/sms_number/sms_number_delete.yml +26 -0
  41. data/fixtures/sms_number/sms_number_get.yml +51 -0
  42. data/fixtures/sms_number/sms_number_list.yml +53 -0
  43. data/fixtures/sms_number/sms_number_update.yml +53 -0
  44. data/fixtures/sms_recipient/sms_recipient_get.yml +51 -0
  45. data/fixtures/sms_recipient/sms_recipient_list.yml +51 -0
  46. data/fixtures/sms_recipient/sms_recipient_update.yml +53 -0
  47. data/fixtures/sms_webhooks/sms_webhooks_add_sms_webhook_route.yml +53 -0
  48. data/fixtures/sms_webhooks/sms_webhooks_delete_sms_webhook_route.yml +47 -0
  49. data/fixtures/sms_webhooks/sms_webhooks_get_sms_webhook_route.yml +51 -0
  50. data/fixtures/sms_webhooks/sms_webhooks_list_sms_webhooks.yml +53 -0
  51. data/fixtures/sms_webhooks/sms_webhooks_update_sms_webhook_route.yml +53 -0
  52. data/fixtures/suppressions/suppressions_add_to_blocklist.yml +53 -0
  53. data/fixtures/suppressions/suppressions_add_to_hard_bounces.yml +53 -0
  54. data/fixtures/suppressions/suppressions_add_to_spam_complaints.yml +53 -0
  55. data/fixtures/suppressions/suppressions_add_to_unsubscribers.yml +53 -0
  56. data/fixtures/suppressions/suppressions_delete_from_blocklist.yml +53 -0
  57. data/fixtures/suppressions/suppressions_delete_from_hard_bounces.yml +53 -0
  58. data/fixtures/suppressions/suppressions_delete_from_spam_complaints.yml +53 -0
  59. data/fixtures/suppressions/suppressions_delete_from_unsubscribers.yml +53 -0
  60. data/fixtures/suppressions/suppressions_get_from_blocklist.yml +51 -0
  61. data/fixtures/suppressions/suppressions_get_hard_bounces.yml +51 -0
  62. data/fixtures/suppressions/suppressions_get_spam_complaints.yml +51 -0
  63. data/fixtures/suppressions/suppressions_get_unsubscribes.yml +51 -0
  64. data/fixtures/templates/templates_delete.yml +51 -0
  65. data/fixtures/templates/templates_list.yml +51 -0
  66. data/fixtures/templates/templates_single.yml +51 -0
  67. data/fixtures/tokens/tokens_create.yml +54 -0
  68. data/fixtures/tokens/tokens_delete.yml +51 -0
  69. data/fixtures/tokens/tokens_update.yml +54 -0
  70. data/fixtures/webhooks/webhooks_create.yml +56 -0
  71. data/fixtures/webhooks/webhooks_delete.yml +47 -0
  72. data/fixtures/webhooks/webhooks_list.yml +55 -0
  73. data/fixtures/webhooks/webhooks_single.yml +53 -0
  74. data/lib/mailersend/email/email.rb +14 -0
  75. data/lib/mailersend/scheduled_messages/scheduled_messages.rb +1 -1
  76. data/lib/mailersend/version.rb +1 -1
  77. data/mailersend-ruby.gemspec +4 -4
  78. data/spec/activity_rspec.rb +26 -0
  79. data/spec/api_quota_rspec.rb +29 -0
  80. data/spec/bulk_email_rspec.rb +44 -0
  81. data/spec/domains_rspec.rb +94 -0
  82. data/spec/email_rspec.rb +29 -0
  83. data/spec/inbound_routing_rspec.rb +44 -0
  84. data/spec/messages_rspec.rb +36 -0
  85. data/spec/recipients_rspec.rb +44 -0
  86. data/spec/scheduled_messages_rspec.rb +44 -0
  87. data/spec/sms_activity_rspec.rb +26 -0
  88. data/spec/sms_inbounds_rspec.rb +77 -0
  89. data/spec/sms_messages_rspec.rb +26 -0
  90. data/spec/sms_number_rspec.rb +54 -0
  91. data/spec/sms_recipient_rspec.rb +46 -0
  92. data/spec/sms_webhooks_rspec.rb +74 -0
  93. data/spec/spec_helper.rb +102 -0
  94. data/spec/suppressions_rspec.rb +124 -0
  95. data/spec/templates_rspec.rb +44 -0
  96. data/spec/tokens_rspec.rb +44 -0
  97. data/spec/webhooks_rspec.rb +60 -0
  98. metadata +96 -13
@@ -0,0 +1,60 @@
1
+ require 'rspec'
2
+ require 'vcr'
3
+ require 'json'
4
+
5
+ VCR.configure do |config|
6
+ config.cassette_library_dir = './fixtures'
7
+ config.hook_into :webmock
8
+ config.filter_sensitive_data('<AUTH>') do |interaction|
9
+ interaction.request.headers['Authorization'][0]
10
+ end
11
+ end
12
+
13
+ RSpec.describe Mailersend::Webhooks do
14
+ let(:client) { Mailersend::Client.new(API_TOKEN) }
15
+ let(:webhooks) { Mailersend::Webhooks.new(client) }
16
+
17
+ it 'returns a list of webhooks' do
18
+ VCR.use_cassette('webhooks/webhooks_list') do
19
+ response = webhooks.list(domain_id: 'jpzkmgq7e5vl059v')
20
+ parsed_response = JSON.parse(response.body)
21
+
22
+ expect(response.status).to eq(200)
23
+ expect(parsed_response['data']).to be_an(Array)
24
+ end
25
+ end
26
+
27
+ it 'returns a single webhook' do
28
+ VCR.use_cassette('webhooks/webhooks_single') do
29
+ response = webhooks.single(webhook_id: '3vz9dlej514kj50y')
30
+ parsed_response = JSON.parse(response.body)
31
+
32
+ expect(response.status).to eq(200)
33
+ expect(parsed_response['data']).to be_a(Hash)
34
+ end
35
+ end
36
+
37
+ it 'creates a new webhook' do
38
+ VCR.use_cassette('webhooks/webhooks_create') do
39
+ response = webhooks.create(
40
+ url: 'https://example.com/webhook',
41
+ name: 'Test Webhook',
42
+ events: ['activity.sent', 'activity.delivered'],
43
+ domain_id: 'jpzkmgq7e5vl059v',
44
+ enabled: true
45
+ )
46
+ parsed_response = JSON.parse(response.body)
47
+
48
+ expect(response.status).to eq(201)
49
+ expect(parsed_response['data']).to be_a(Hash)
50
+ end
51
+ end
52
+
53
+ it 'deletes a webhook' do
54
+ VCR.use_cassette('webhooks/webhooks_delete') do
55
+ response = webhooks.delete(webhook_id: '3vz9dlej514kj50y')
56
+
57
+ expect(response.status).to eq(204)
58
+ end
59
+ end
60
+ end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailersend-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nikola Milojević
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-06-24 00:00:00.000000000 Z
10
+ date: 2025-04-10 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: http
@@ -16,42 +15,42 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '5.0'
18
+ version: '5.2'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '5.0'
25
+ version: '5.2'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: json
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - "~>"
32
31
  - !ruby/object:Gem::Version
33
- version: '2.5'
32
+ version: '2.9'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - "~>"
39
38
  - !ruby/object:Gem::Version
40
- version: '2.5'
39
+ version: '2.9'
41
40
  - !ruby/object:Gem::Dependency
42
41
  name: uri
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - "~>"
46
45
  - !ruby/object:Gem::Version
47
- version: 0.13.0
46
+ version: '1.0'
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
- version: 0.13.0
53
+ version: '1.0'
55
54
  description: MailerSend's official Ruby SDK. Interacts with all endpoints at MailerSend
56
55
  API.
57
56
  email:
@@ -67,6 +66,7 @@ files:
67
66
  - ".github/workflows/main.yml"
68
67
  - ".github/workflows/publish_gem.yml"
69
68
  - ".gitignore"
69
+ - ".rspec"
70
70
  - ".rubocop.yml"
71
71
  - CHANGELOG.md
72
72
  - Gemfile
@@ -75,6 +75,71 @@ files:
75
75
  - Rakefile
76
76
  - bin/console
77
77
  - bin/setup
78
+ - fixtures/activity/activity_get_activity.yml
79
+ - fixtures/api_quota/api_quota_get.yml
80
+ - fixtures/bulk_email/bulk_email_send.yml
81
+ - fixtures/bulk_email/bulk_email_status.yml
82
+ - fixtures/domains/domains_add.yml
83
+ - fixtures/domains/domains_delete.yml
84
+ - fixtures/domains/domains_dns.yml
85
+ - fixtures/domains/domains_list.yml
86
+ - fixtures/domains/domains_recipients.yml
87
+ - fixtures/domains/domains_settings.yml
88
+ - fixtures/domains/domains_single.yml
89
+ - fixtures/domains/domains_verify.yml
90
+ - fixtures/email/email_send.yml
91
+ - fixtures/inbound_routing/inbound_routing_delete.yml
92
+ - fixtures/inbound_routing/inbound_routing_list.yml
93
+ - fixtures/inbound_routing/inbound_routing_single.yml
94
+ - fixtures/messages/messages_list_messages.yml
95
+ - fixtures/messages/messages_single_message.yml
96
+ - fixtures/recipients/recipients_delete.yml
97
+ - fixtures/recipients/recipients_list.yml
98
+ - fixtures/recipients/recipients_single.yml
99
+ - fixtures/scheduled_messages/scheduled_messages_delete.yml
100
+ - fixtures/scheduled_messages/scheduled_messages_get_list.yml
101
+ - fixtures/scheduled_messages/scheduled_messages_get_single.yml
102
+ - fixtures/sms_activity/sms_activity_list.yml
103
+ - fixtures/sms_inbounds/sms_inbounds_add_sms_inbound_route.yml
104
+ - fixtures/sms_inbounds/sms_inbounds_delete_sms_inbound_route.yml
105
+ - fixtures/sms_inbounds/sms_inbounds_get_sms_inbound_route.yml
106
+ - fixtures/sms_inbounds/sms_inbounds_list_sms_inbounds.yml
107
+ - fixtures/sms_inbounds/sms_inbounds_update_sms_inbound_route.yml
108
+ - fixtures/sms_messages/sms_messages_list_sms_messages.yml
109
+ - fixtures/sms_number/sms_number_delete.yml
110
+ - fixtures/sms_number/sms_number_get.yml
111
+ - fixtures/sms_number/sms_number_list.yml
112
+ - fixtures/sms_number/sms_number_update.yml
113
+ - fixtures/sms_recipient/sms_recipient_get.yml
114
+ - fixtures/sms_recipient/sms_recipient_list.yml
115
+ - fixtures/sms_recipient/sms_recipient_update.yml
116
+ - fixtures/sms_webhooks/sms_webhooks_add_sms_webhook_route.yml
117
+ - fixtures/sms_webhooks/sms_webhooks_delete_sms_webhook_route.yml
118
+ - fixtures/sms_webhooks/sms_webhooks_get_sms_webhook_route.yml
119
+ - fixtures/sms_webhooks/sms_webhooks_list_sms_webhooks.yml
120
+ - fixtures/sms_webhooks/sms_webhooks_update_sms_webhook_route.yml
121
+ - fixtures/suppressions/suppressions_add_to_blocklist.yml
122
+ - fixtures/suppressions/suppressions_add_to_hard_bounces.yml
123
+ - fixtures/suppressions/suppressions_add_to_spam_complaints.yml
124
+ - fixtures/suppressions/suppressions_add_to_unsubscribers.yml
125
+ - fixtures/suppressions/suppressions_delete_from_blocklist.yml
126
+ - fixtures/suppressions/suppressions_delete_from_hard_bounces.yml
127
+ - fixtures/suppressions/suppressions_delete_from_spam_complaints.yml
128
+ - fixtures/suppressions/suppressions_delete_from_unsubscribers.yml
129
+ - fixtures/suppressions/suppressions_get_from_blocklist.yml
130
+ - fixtures/suppressions/suppressions_get_hard_bounces.yml
131
+ - fixtures/suppressions/suppressions_get_spam_complaints.yml
132
+ - fixtures/suppressions/suppressions_get_unsubscribes.yml
133
+ - fixtures/templates/templates_delete.yml
134
+ - fixtures/templates/templates_list.yml
135
+ - fixtures/templates/templates_single.yml
136
+ - fixtures/tokens/tokens_create.yml
137
+ - fixtures/tokens/tokens_delete.yml
138
+ - fixtures/tokens/tokens_update.yml
139
+ - fixtures/webhooks/webhooks_create.yml
140
+ - fixtures/webhooks/webhooks_delete.yml
141
+ - fixtures/webhooks/webhooks_list.yml
142
+ - fixtures/webhooks/webhooks_single.yml
78
143
  - lib/mailersend-ruby.rb
79
144
  - lib/mailersend.rb
80
145
  - lib/mailersend/activity/activity.rb
@@ -104,6 +169,26 @@ files:
104
169
  - lib/mailersend/webhooks/webhooks.rb
105
170
  - mailersend-ruby.gemspec
106
171
  - renovate.json
172
+ - spec/activity_rspec.rb
173
+ - spec/api_quota_rspec.rb
174
+ - spec/bulk_email_rspec.rb
175
+ - spec/domains_rspec.rb
176
+ - spec/email_rspec.rb
177
+ - spec/inbound_routing_rspec.rb
178
+ - spec/messages_rspec.rb
179
+ - spec/recipients_rspec.rb
180
+ - spec/scheduled_messages_rspec.rb
181
+ - spec/sms_activity_rspec.rb
182
+ - spec/sms_inbounds_rspec.rb
183
+ - spec/sms_messages_rspec.rb
184
+ - spec/sms_number_rspec.rb
185
+ - spec/sms_recipient_rspec.rb
186
+ - spec/sms_webhooks_rspec.rb
187
+ - spec/spec_helper.rb
188
+ - spec/suppressions_rspec.rb
189
+ - spec/templates_rspec.rb
190
+ - spec/tokens_rspec.rb
191
+ - spec/webhooks_rspec.rb
107
192
  homepage: https://www.mailersend.com
108
193
  licenses:
109
194
  - MIT
@@ -113,7 +198,6 @@ metadata:
113
198
  source_code_uri: https://github.com/mailersend/mailersend-ruby
114
199
  changelog_uri: https://github.com/mailersend/mailersend-ruby/blob/main/CHANGELOG.md
115
200
  rubygems_mfa_required: 'true'
116
- post_install_message:
117
201
  rdoc_options: []
118
202
  require_paths:
119
203
  - lib
@@ -121,15 +205,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
121
205
  requirements:
122
206
  - - ">="
123
207
  - !ruby/object:Gem::Version
124
- version: 2.5.0
208
+ version: '3.1'
125
209
  required_rubygems_version: !ruby/object:Gem::Requirement
126
210
  requirements:
127
211
  - - ">="
128
212
  - !ruby/object:Gem::Version
129
213
  version: '0'
130
214
  requirements: []
131
- rubygems_version: 3.5.11
132
- signing_key:
215
+ rubygems_version: 3.6.2
133
216
  specification_version: 4
134
217
  summary: MailerSend's official Ruby SDK
135
218
  test_files: []