postmark 1.21.7 → 1.21.8
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.
- checksums.yaml +4 -4
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.rdoc +4 -0
- data/RELEASE.md +1 -0
- data/VERSION +1 -1
- data/lib/postmark/api_client.rb +7 -7
- data/lib/postmark/client.rb +6 -3
- data/lib/postmark/helpers/hash_helper.rb +36 -11
- data/lib/postmark/version.rb +1 -1
- data/spec/unit/postmark/api_client_spec.rb +32 -8
- data/spec/unit/postmark/helpers/hash_helper_spec.rb +101 -14
- metadata +5 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: bd56ea1117c73ce9a8f60d4dc81dd29f3b409efe1f362a534cb6a9b16a67dc60
         | 
| 4 | 
            +
              data.tar.gz: 245374f9fb1752254c9c32aeff3ee0139b4b5bce4d252ce40c4f9d2627db42f7
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 17ad62b39034c58dfa35b9aeb296d609b35d786ae1c752abe07df6be4bf7743ecac1a9d83675e1ed860f7e01354bdc9761ccf742fbfe60c5bdd4016fbb831d9b
         | 
| 7 | 
            +
              data.tar.gz: a3a0792f2525acc786627d7f16b0faa453b9608397a88d270a2bdcf61da3a00549a6bfb0eb92096f1015825fe4813fa5d62c1ba5b591bc675761c65fa2f38fac
         | 
    
        data/.ruby-gemset
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            postmark-gem
         | 
    
        data/.ruby-version
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            ruby-2.6
         | 
    
        data/CHANGELOG.rdoc
    CHANGED
    
    
    
        data/RELEASE.md
    CHANGED
    
    | @@ -1,5 +1,6 @@ | |
| 1 1 | 
             
            New versions of the gem are cut by the Postmark team, this is a quick guide to ensuring a smooth release.
         | 
| 2 2 |  | 
| 3 | 
            +
            1. Determine the next version of the gem by following the [SemVer](https://semver.org/) guidelines.
         | 
| 3 4 | 
             
            1. Verify all builds are passing on CircleCI for your branch.
         | 
| 4 5 | 
             
            1. Merge in your branch to master.
         | 
| 5 6 | 
             
            1. Update VERSION and lib/postmark/version.rb with the new version.
         | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            1.21. | 
| 1 | 
            +
            1.21.8
         | 
    
        data/lib/postmark/api_client.rb
    CHANGED
    
    | @@ -38,7 +38,7 @@ module Postmark | |
| 38 38 | 
             
                    response, error = take_response_of { http_client.post("email", data) }
         | 
| 39 39 | 
             
                    update_message(message, response)
         | 
| 40 40 | 
             
                    raise error if error
         | 
| 41 | 
            -
                    format_response(response, true)
         | 
| 41 | 
            +
                    format_response(response, :compatible => true)
         | 
| 42 42 | 
             
                  end
         | 
| 43 43 | 
             
                end
         | 
| 44 44 |  | 
| @@ -51,7 +51,7 @@ module Postmark | |
| 51 51 | 
             
                    response, error = take_response_of { http_client.post("email/withTemplate", data) }
         | 
| 52 52 | 
             
                    update_message(message, response)
         | 
| 53 53 | 
             
                    raise error if error
         | 
| 54 | 
            -
                    format_response(response, true)
         | 
| 54 | 
            +
                    format_response(response, :compatible => true)
         | 
| 55 55 | 
             
                  end
         | 
| 56 56 | 
             
                end
         | 
| 57 57 |  | 
| @@ -95,7 +95,7 @@ module Postmark | |
| 95 95 | 
             
                end
         | 
| 96 96 |  | 
| 97 97 | 
             
                def delivery_stats
         | 
| 98 | 
            -
                  response = format_response(http_client.get("deliverystats"), true)
         | 
| 98 | 
            +
                  response = format_response(http_client.get("deliverystats"), :compatible => true)
         | 
| 99 99 |  | 
| 100 100 | 
             
                  if response[:bounces]
         | 
| 101 101 | 
             
                    response[:bounces] = format_response(response[:bounces])
         | 
| @@ -343,13 +343,13 @@ module Postmark | |
| 343 343 | 
             
                end
         | 
| 344 344 |  | 
| 345 345 | 
             
                def create_message_stream(attributes = {})
         | 
| 346 | 
            -
                  data = serialize(HashHelper.to_postmark(attributes))
         | 
| 347 | 
            -
                  format_response(http_client.post('message-streams', data))
         | 
| 346 | 
            +
                  data = serialize(HashHelper.to_postmark(attributes, :deep => true))
         | 
| 347 | 
            +
                  format_response(http_client.post('message-streams', data), :deep => true)
         | 
| 348 348 | 
             
                end
         | 
| 349 349 |  | 
| 350 350 | 
             
                def update_message_stream(id, attributes)
         | 
| 351 | 
            -
                  data = serialize(HashHelper.to_postmark(attributes))
         | 
| 352 | 
            -
                  format_response(http_client.patch("message-streams/#{id}", data))
         | 
| 351 | 
            +
                  data = serialize(HashHelper.to_postmark(attributes, :deep => true))
         | 
| 352 | 
            +
                  format_response(http_client.patch("message-streams/#{id}", data), :deep => true)
         | 
| 353 353 | 
             
                end
         | 
| 354 354 |  | 
| 355 355 | 
             
                def archive_message_stream(id)
         | 
    
        data/lib/postmark/client.rb
    CHANGED
    
    | @@ -60,13 +60,16 @@ module Postmark | |
| 60 60 | 
             
                  [e.full_response || {}, e]
         | 
| 61 61 | 
             
                end
         | 
| 62 62 |  | 
| 63 | 
            -
                def format_response(response,  | 
| 63 | 
            +
                def format_response(response, options = {})
         | 
| 64 64 | 
             
                  return {} unless response
         | 
| 65 65 |  | 
| 66 | 
            +
                  compatible = options.fetch(:compatible, false)
         | 
| 67 | 
            +
                  deep = options.fetch(:deep, false)
         | 
| 68 | 
            +
             | 
| 66 69 | 
             
                  if response.kind_of? Array
         | 
| 67 | 
            -
                    response.map { |entry| Postmark::HashHelper.to_ruby(entry, compatible) }
         | 
| 70 | 
            +
                    response.map { |entry| Postmark::HashHelper.to_ruby(entry, :compatible => compatible, :deep => deep) }
         | 
| 68 71 | 
             
                  else
         | 
| 69 | 
            -
                    Postmark::HashHelper.to_ruby(response, compatible)
         | 
| 72 | 
            +
                    Postmark::HashHelper.to_ruby(response, :compatible => compatible, :deep => deep)
         | 
| 70 73 | 
             
                  end
         | 
| 71 74 | 
             
                end
         | 
| 72 75 |  | 
| @@ -3,22 +3,47 @@ module Postmark | |
| 3 3 |  | 
| 4 4 | 
             
                extend self
         | 
| 5 5 |  | 
| 6 | 
            -
                def to_postmark( | 
| 7 | 
            -
                   | 
| 6 | 
            +
                def to_postmark(object, options = {})
         | 
| 7 | 
            +
                  deep = options.fetch(:deep, false)
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                  case object
         | 
| 10 | 
            +
                  when Hash
         | 
| 11 | 
            +
                    object.reduce({}) do |m, (k, v)|
         | 
| 12 | 
            +
                      m.tap do |h|
         | 
| 13 | 
            +
                        h[Inflector.to_postmark(k)] = deep ? to_postmark(v, options) : v
         | 
| 14 | 
            +
                      end
         | 
| 15 | 
            +
                    end
         | 
| 16 | 
            +
                  when Array
         | 
| 17 | 
            +
                    deep ? object.map { |v| to_postmark(v, options) } : object
         | 
| 18 | 
            +
                  else
         | 
| 19 | 
            +
                    object
         | 
| 20 | 
            +
                  end
         | 
| 8 21 | 
             
                end
         | 
| 9 22 |  | 
| 10 | 
            -
                def to_ruby( | 
| 11 | 
            -
                   | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 23 | 
            +
                def to_ruby(object, options = {})
         | 
| 24 | 
            +
                  compatible = options.fetch(:compatible, false)
         | 
| 25 | 
            +
                  deep = options.fetch(:deep, false)
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                  case object
         | 
| 28 | 
            +
                  when Hash
         | 
| 29 | 
            +
                    object.reduce({}) do |m, (k, v)|
         | 
| 30 | 
            +
                      m.tap do |h|
         | 
| 31 | 
            +
                        h[Inflector.to_ruby(k)] = deep ? to_ruby(v, options) : v
         | 
| 32 | 
            +
                      end
         | 
| 33 | 
            +
                    end.tap do |result|
         | 
| 34 | 
            +
                      if compatible
         | 
| 35 | 
            +
                        result.merge!(object)
         | 
| 36 | 
            +
                        enhance_with_compatibility_warning(result)
         | 
| 37 | 
            +
                      end
         | 
| 38 | 
            +
                    end
         | 
| 39 | 
            +
                  when Array
         | 
| 40 | 
            +
                    deep ? object.map { |v| to_ruby(v, options) } : object
         | 
| 41 | 
            +
                  else
         | 
| 42 | 
            +
                    object
         | 
| 16 43 | 
             
                  end
         | 
| 17 | 
            -
             | 
| 18 | 
            -
                  formatted
         | 
| 19 44 | 
             
                end
         | 
| 20 45 |  | 
| 21 | 
            -
                 | 
| 46 | 
            +
                private
         | 
| 22 47 |  | 
| 23 48 | 
             
                def enhance_with_compatibility_warning(hash)
         | 
| 24 49 | 
             
                  def hash.[](key)
         | 
    
        data/lib/postmark/version.rb
    CHANGED
    
    
| @@ -1073,7 +1073,10 @@ describe Postmark::ApiClient do | |
| 1073 1073 | 
             
                  {
         | 
| 1074 1074 | 
             
                    :name => 'My Stream',
         | 
| 1075 1075 | 
             
                    :id => 'my-stream',
         | 
| 1076 | 
            -
                    :message_stream_type => 'Broadcasts'
         | 
| 1076 | 
            +
                    :message_stream_type => 'Broadcasts',
         | 
| 1077 | 
            +
                    :subscription_management_configuration => {
         | 
| 1078 | 
            +
                      :unsubscribe_handling_type => 'Custom'
         | 
| 1079 | 
            +
                    }
         | 
| 1077 1080 | 
             
                  }
         | 
| 1078 1081 | 
             
                end
         | 
| 1079 1082 |  | 
| @@ -1083,7 +1086,10 @@ describe Postmark::ApiClient do | |
| 1083 1086 | 
             
                    'Id' => 'my-stream',
         | 
| 1084 1087 | 
             
                    'MessageStreamType' => 'Broadcasts',
         | 
| 1085 1088 | 
             
                    'ServerId' => 222,
         | 
| 1086 | 
            -
                    'CreatedAt' => '2020-04-01T03:33:33.333-03:00'
         | 
| 1089 | 
            +
                    'CreatedAt' => '2020-04-01T03:33:33.333-03:00',
         | 
| 1090 | 
            +
                    'SubscriptionManagementConfiguration' => {
         | 
| 1091 | 
            +
                      'UnsubscribeHandlingType' => 'Custom'
         | 
| 1092 | 
            +
                    }
         | 
| 1087 1093 | 
             
                  }
         | 
| 1088 1094 | 
             
                end
         | 
| 1089 1095 |  | 
| @@ -1097,7 +1103,10 @@ describe Postmark::ApiClient do | |
| 1097 1103 | 
             
                         json_representation_of({
         | 
| 1098 1104 | 
             
                           'Name' => 'My Stream',
         | 
| 1099 1105 | 
             
                           'Id' => 'my-stream',
         | 
| 1100 | 
            -
                           'MessageStreamType' => 'Broadcasts'
         | 
| 1106 | 
            +
                           'MessageStreamType' => 'Broadcasts',
         | 
| 1107 | 
            +
                           'SubscriptionManagementConfiguration' => {
         | 
| 1108 | 
            +
                             'UnsubscribeHandlingType' => 'Custom'
         | 
| 1109 | 
            +
                           }
         | 
| 1101 1110 | 
             
                         }))
         | 
| 1102 1111 | 
             
                  subject
         | 
| 1103 1112 | 
             
                end
         | 
| @@ -1108,7 +1117,10 @@ describe Postmark::ApiClient do | |
| 1108 1117 | 
             
                    :name => 'My Stream',
         | 
| 1109 1118 | 
             
                    :server_id => 222,
         | 
| 1110 1119 | 
             
                    :message_stream_type => 'Broadcasts',
         | 
| 1111 | 
            -
                    :created_at => '2020-04-01T03:33:33.333-03:00'
         | 
| 1120 | 
            +
                    :created_at => '2020-04-01T03:33:33.333-03:00',
         | 
| 1121 | 
            +
                    :subscription_management_configuration => {
         | 
| 1122 | 
            +
                      :unsubscribe_handling_type => 'Custom'
         | 
| 1123 | 
            +
                    }
         | 
| 1112 1124 | 
             
                  )
         | 
| 1113 1125 | 
             
                }
         | 
| 1114 1126 | 
             
              end
         | 
| @@ -1118,7 +1130,10 @@ describe Postmark::ApiClient do | |
| 1118 1130 |  | 
| 1119 1131 | 
             
                let(:attrs) do
         | 
| 1120 1132 | 
             
                  {
         | 
| 1121 | 
            -
                    :name => 'My Stream XXX'
         | 
| 1133 | 
            +
                    :name => 'My Stream XXX',
         | 
| 1134 | 
            +
                    :subscription_management_configuration => {
         | 
| 1135 | 
            +
                      :unsubscribe_handling_type => 'Custom'
         | 
| 1136 | 
            +
                    }
         | 
| 1122 1137 | 
             
                  }
         | 
| 1123 1138 | 
             
                end
         | 
| 1124 1139 |  | 
| @@ -1128,7 +1143,10 @@ describe Postmark::ApiClient do | |
| 1128 1143 | 
             
                    'Id' => 'xxx',
         | 
| 1129 1144 | 
             
                    'MessageStreamType' => 'Broadcasts',
         | 
| 1130 1145 | 
             
                    'ServerId' => 222,
         | 
| 1131 | 
            -
                    'CreatedAt' => '2020-04-01T03:33:33.333-03:00'
         | 
| 1146 | 
            +
                    'CreatedAt' => '2020-04-01T03:33:33.333-03:00',
         | 
| 1147 | 
            +
                    'SubscriptionManagementConfiguration' => {
         | 
| 1148 | 
            +
                      'UnsubscribeHandlingType' => 'Custom'
         | 
| 1149 | 
            +
                    }
         | 
| 1132 1150 | 
             
                  }
         | 
| 1133 1151 | 
             
                end
         | 
| 1134 1152 |  | 
| @@ -1140,7 +1158,10 @@ describe Postmark::ApiClient do | |
| 1140 1158 | 
             
                  expect(http_client).to receive(:patch).
         | 
| 1141 1159 | 
             
                    with('message-streams/xxx',
         | 
| 1142 1160 | 
             
                         match_json({
         | 
| 1143 | 
            -
                            | 
| 1161 | 
            +
                           'Name' => 'My Stream XXX',
         | 
| 1162 | 
            +
                           'SubscriptionManagementConfiguration' => {
         | 
| 1163 | 
            +
                             'UnsubscribeHandlingType' => 'Custom'
         | 
| 1164 | 
            +
                           }
         | 
| 1144 1165 | 
             
                         }))
         | 
| 1145 1166 | 
             
                  subject
         | 
| 1146 1167 | 
             
                end
         | 
| @@ -1151,7 +1172,10 @@ describe Postmark::ApiClient do | |
| 1151 1172 | 
             
                    :name => 'My Stream XXX',
         | 
| 1152 1173 | 
             
                    :server_id => 222,
         | 
| 1153 1174 | 
             
                    :message_stream_type => 'Broadcasts',
         | 
| 1154 | 
            -
                    :created_at => '2020-04-01T03:33:33.333-03:00'
         | 
| 1175 | 
            +
                    :created_at => '2020-04-01T03:33:33.333-03:00',
         | 
| 1176 | 
            +
                    :subscription_management_configuration => {
         | 
| 1177 | 
            +
                      :unsubscribe_handling_type => 'Custom'
         | 
| 1178 | 
            +
                    }
         | 
| 1155 1179 | 
             
                  )
         | 
| 1156 1180 | 
             
                }
         | 
| 1157 1181 | 
             
              end
         | 
| @@ -2,32 +2,119 @@ require 'spec_helper' | |
| 2 2 |  | 
| 3 3 | 
             
            describe Postmark::HashHelper do
         | 
| 4 4 | 
             
              describe ".to_postmark" do
         | 
| 5 | 
            -
                let(:source)  | 
| 6 | 
            -
             | 
| 5 | 
            +
                let(:source) do
         | 
| 6 | 
            +
                  {
         | 
| 7 | 
            +
                    :level_one => {
         | 
| 8 | 
            +
                      :level_two => {
         | 
| 9 | 
            +
                        :level_three => [{ :array_item => 1 }]
         | 
| 10 | 
            +
                      }
         | 
| 11 | 
            +
                    }
         | 
| 12 | 
            +
                  }
         | 
| 13 | 
            +
                end
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                describe 'default behaviour' do
         | 
| 16 | 
            +
                  let(:target) do
         | 
| 17 | 
            +
                    {
         | 
| 18 | 
            +
                      'LevelOne' => {
         | 
| 19 | 
            +
                        :level_two => {
         | 
| 20 | 
            +
                          :level_three => [{ :array_item => 1 }]
         | 
| 21 | 
            +
                        }
         | 
| 22 | 
            +
                      }
         | 
| 23 | 
            +
                    }
         | 
| 24 | 
            +
                  end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                  it 'does not convert nested elements' do
         | 
| 27 | 
            +
                    expect(subject.to_postmark(source)).to eq(target)
         | 
| 28 | 
            +
                  end
         | 
| 29 | 
            +
                end
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                describe 'deep conversion' do
         | 
| 32 | 
            +
                  let(:target) do
         | 
| 33 | 
            +
                    {
         | 
| 34 | 
            +
                      'LevelOne' => {
         | 
| 35 | 
            +
                        'LevelTwo' => {
         | 
| 36 | 
            +
                          'LevelThree' => [{ 'ArrayItem' => 1 }]
         | 
| 37 | 
            +
                        }
         | 
| 38 | 
            +
                      }
         | 
| 39 | 
            +
                    }
         | 
| 40 | 
            +
                  end
         | 
| 7 41 |  | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 42 | 
            +
                  it 'converts nested elements when requested' do
         | 
| 43 | 
            +
                    expect(subject.to_postmark(source, :deep => true)).to eq(target)
         | 
| 44 | 
            +
                  end
         | 
| 10 45 | 
             
                end
         | 
| 11 46 |  | 
| 12 | 
            -
                it ' | 
| 13 | 
            -
                  expect(subject.to_postmark( | 
| 47 | 
            +
                it 'leaves CamelCase keys untouched' do
         | 
| 48 | 
            +
                  expect(subject.to_postmark('ReplyTo' => 'alice@example.com')).to eq('ReplyTo' => 'alice@example.com')
         | 
| 14 49 | 
             
                end
         | 
| 15 50 | 
             
              end
         | 
| 16 51 |  | 
| 17 52 | 
             
              describe ".to_ruby" do
         | 
| 18 | 
            -
                let(:source)  | 
| 19 | 
            -
             | 
| 53 | 
            +
                let(:source) do
         | 
| 54 | 
            +
                  {
         | 
| 55 | 
            +
                    'LevelOne' => {
         | 
| 56 | 
            +
                      'LevelTwo' => {
         | 
| 57 | 
            +
                        'LevelThree' => [{ 'ArrayItem' => 1 }]
         | 
| 58 | 
            +
                      }
         | 
| 59 | 
            +
                    }
         | 
| 60 | 
            +
                  }
         | 
| 61 | 
            +
                end
         | 
| 20 62 |  | 
| 21 | 
            -
                 | 
| 22 | 
            -
                   | 
| 63 | 
            +
                describe 'default behaviour' do
         | 
| 64 | 
            +
                  let(:target) do
         | 
| 65 | 
            +
                    {
         | 
| 66 | 
            +
                      :level_one => {
         | 
| 67 | 
            +
                        'LevelTwo' => {
         | 
| 68 | 
            +
                          'LevelThree' => [{ 'ArrayItem' => 1 }]
         | 
| 69 | 
            +
                        }
         | 
| 70 | 
            +
                      }
         | 
| 71 | 
            +
                    }
         | 
| 72 | 
            +
                  end
         | 
| 73 | 
            +
             | 
| 74 | 
            +
                  it 'does not convert nested elements' do
         | 
| 75 | 
            +
                    expect(subject.to_ruby(source)).to eq(target)
         | 
| 76 | 
            +
                  end
         | 
| 23 77 | 
             
                end
         | 
| 24 78 |  | 
| 25 | 
            -
                 | 
| 26 | 
            -
                   | 
| 79 | 
            +
                describe 'deep conversion' do
         | 
| 80 | 
            +
                  let(:target) do
         | 
| 81 | 
            +
                    {
         | 
| 82 | 
            +
                      :level_one => {
         | 
| 83 | 
            +
                        :level_two => {
         | 
| 84 | 
            +
                          :level_three => [{ :array_item => 1 }]
         | 
| 85 | 
            +
                        }
         | 
| 86 | 
            +
                      }
         | 
| 87 | 
            +
                    }
         | 
| 88 | 
            +
                  end
         | 
| 89 | 
            +
             | 
| 90 | 
            +
                  it 'converts nested elements when requested' do
         | 
| 91 | 
            +
                    expect(subject.to_ruby(source, :deep => true)).to eq(target)
         | 
| 92 | 
            +
                  end
         | 
| 93 | 
            +
                end
         | 
| 94 | 
            +
             | 
| 95 | 
            +
                describe 'compatibility mode' do
         | 
| 96 | 
            +
                  let(:target) do
         | 
| 97 | 
            +
                    {
         | 
| 98 | 
            +
                      :level_one => {
         | 
| 99 | 
            +
                        'LevelTwo' => {
         | 
| 100 | 
            +
                          'LevelThree' => [{ 'ArrayItem' => 1 }]
         | 
| 101 | 
            +
                        }
         | 
| 102 | 
            +
                      },
         | 
| 103 | 
            +
                      'LevelOne' => {
         | 
| 104 | 
            +
                        'LevelTwo' => {
         | 
| 105 | 
            +
                          'LevelThree' => [{ 'ArrayItem' => 1 }]
         | 
| 106 | 
            +
                        }
         | 
| 107 | 
            +
                      }
         | 
| 108 | 
            +
                    }
         | 
| 109 | 
            +
                  end
         | 
| 110 | 
            +
             | 
| 111 | 
            +
                  it 'preserves the original structure' do
         | 
| 112 | 
            +
                    expect(subject.to_ruby(source, :compatible => true)).to eq target
         | 
| 113 | 
            +
                  end
         | 
| 27 114 | 
             
                end
         | 
| 28 115 |  | 
| 29 | 
            -
                it ' | 
| 30 | 
            -
                  expect(subject.to_ruby( | 
| 116 | 
            +
                it 'leaves symbol keys untouched' do
         | 
| 117 | 
            +
                  expect(subject.to_ruby(:reply_to => 'alice@example.com')).to eq(:reply_to => 'alice@example.com')
         | 
| 31 118 | 
             
                end
         | 
| 32 119 | 
             
              end
         | 
| 33 120 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: postmark
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.21. | 
| 4 | 
            +
              version: 1.21.8
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Tomek Maszkowski
         | 
| @@ -13,7 +13,7 @@ authors: | |
| 13 13 | 
             
            autorequire:
         | 
| 14 14 | 
             
            bindir: bin
         | 
| 15 15 | 
             
            cert_chain: []
         | 
| 16 | 
            -
            date: 2021-07- | 
| 16 | 
            +
            date: 2021-07-29 00:00:00.000000000 Z
         | 
| 17 17 | 
             
            dependencies:
         | 
| 18 18 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 19 19 | 
             
              name: json
         | 
| @@ -71,6 +71,8 @@ files: | |
| 71 71 | 
             
            - ".gitignore"
         | 
| 72 72 | 
             
            - ".rake_tasks"
         | 
| 73 73 | 
             
            - ".rspec"
         | 
| 74 | 
            +
            - ".ruby-gemset"
         | 
| 75 | 
            +
            - ".ruby-version"
         | 
| 74 76 | 
             
            - CHANGELOG.rdoc
         | 
| 75 77 | 
             
            - CONTRIBUTING.md
         | 
| 76 78 | 
             
            - Gemfile
         | 
| @@ -150,7 +152,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 150 152 | 
             
                - !ruby/object:Gem::Version
         | 
| 151 153 | 
             
                  version: 1.3.7
         | 
| 152 154 | 
             
            requirements: []
         | 
| 153 | 
            -
            rubygems_version: 3. | 
| 155 | 
            +
            rubygems_version: 3.0.8
         | 
| 154 156 | 
             
            signing_key:
         | 
| 155 157 | 
             
            specification_version: 4
         | 
| 156 158 | 
             
            summary: Official Postmark API wrapper.
         |