late-sdk 0.0.945 → 0.0.946

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06b139dee8527c1c6a113a3e72d0741b26edaafd6fad59e369ebcd10b173fa3d
4
- data.tar.gz: 0bff41a2d60b52fc069b21d4a12c9ee306160a59aa44743a37cdea357db7f418
3
+ metadata.gz: 11a5a0391999650568f706eacc803aeaaa440d97708ea4b2d720db0da2f82954
4
+ data.tar.gz: 8c2235a143397d96d5518dbf5edf4df0fdc7b88d658c801e5ecc4fc3ed40f235
5
5
  SHA512:
6
- metadata.gz: 4491bf3530ed66f8bf2c72592c7d3995730cbad905c8494b5cdeb9c6428b61da8bd4a9848c60c0a9b22446261134e5d51996bd00942bae84d7396f0aef1ee337
7
- data.tar.gz: 9ab0279020ee5d6ab8f383f3499f97c51ebb4ef206753e280564ad64eabc00e23781e594a2f69c056b3d3e9a20da6bac3f7ccaa12b6cff103904164794c94adb
6
+ metadata.gz: ddb310850c27fd598ff2e68a3f398a45edd7b68f2129de41d0385a40c4d40991ad3e3bd6ca8f626a19c70d2cf3139163e618104f8a69a81fead74837009a7192
7
+ data.tar.gz: 385395f747c324fab7064bdbf804cabf453114bbacdbd15818f58d0a0d83c7f456aee1e5d28a81dffa82aa0949cabfd3687a2f72fbfb47e13947efb5e2fb263f
data/README.md CHANGED
@@ -1428,6 +1428,7 @@ Class | Method | HTTP request | Description
1428
1428
  - [Zernio::GetCommentAutomation200Response](docs/GetCommentAutomation200Response.md)
1429
1429
  - [Zernio::GetCommentAutomation200ResponseAutomation](docs/GetCommentAutomation200ResponseAutomation.md)
1430
1430
  - [Zernio::GetCommentAutomation200ResponseLogsInner](docs/GetCommentAutomation200ResponseLogsInner.md)
1431
+ - [Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError](docs/GetCommentAutomation200ResponseLogsInnerPlatformError.md)
1431
1432
  - [Zernio::GetConnectUrl200Response](docs/GetConnectUrl200Response.md)
1432
1433
  - [Zernio::GetContact200Response](docs/GetContact200Response.md)
1433
1434
  - [Zernio::GetContact200ResponseChannelsInner](docs/GetContact200ResponseChannelsInner.md)
@@ -15,6 +15,8 @@
15
15
  | **commenter_is_follower** | **Boolean** | Follow relationship at decision time. Absent when Instagram would not tell us (the commenter never messaged the account). | [optional] |
16
16
  | **commenter_follower_count** | **Integer** | | [optional] |
17
17
  | **error** | **String** | DM error message if status is failed | [optional] |
18
+ | **platform_error** | [**GetCommentAutomation200ResponseLogsInnerPlatformError**](GetCommentAutomation200ResponseLogsInnerPlatformError.md) | | [optional] |
19
+ | **private_reply_consumed** | **Boolean** | True when the failed send spent the comment's single Instagram private reply (subcode 1545133 or 2534023), the same rule as `details.privateReplyConsumed` on the private-reply endpoint. Absent on direct DMs, on Facebook, and on rows written before this field existed. | [optional] |
18
20
  | **comment_reply_status** | **String** | Outcome of the optional public reply on the triggering comment. 'skipped' if no commentReply was configured or if the DM failed (the public reply is not attempted in that case). | [optional] |
19
21
  | **comment_reply_error** | **String** | Public-reply error message if commentReplyStatus is failed | [optional] |
20
22
  | **next_due_at** | **Time** | When the next queued send fires. Present only while something is still pending. | [optional] |
@@ -37,6 +39,8 @@ instance = Zernio::GetCommentAutomation200ResponseLogsInner.new(
37
39
  commenter_is_follower: null,
38
40
  commenter_follower_count: null,
39
41
  error: null,
42
+ platform_error: null,
43
+ private_reply_consumed: null,
40
44
  comment_reply_status: null,
41
45
  comment_reply_error: null,
42
46
  next_due_at: null,
@@ -0,0 +1,20 @@
1
+ # Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **code** | **Integer** | | [optional] |
8
+ | **subcode** | **Integer** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError.new(
16
+ code: null,
17
+ subcode: null
18
+ )
19
+ ```
20
+
@@ -42,6 +42,11 @@ module Zernio
42
42
  # DM error message if status is failed
43
43
  attr_accessor :error
44
44
 
45
+ attr_accessor :platform_error
46
+
47
+ # True when the failed send spent the comment's single Instagram private reply (subcode 1545133 or 2534023), the same rule as `details.privateReplyConsumed` on the private-reply endpoint. Absent on direct DMs, on Facebook, and on rows written before this field existed.
48
+ attr_accessor :private_reply_consumed
49
+
45
50
  # Outcome of the optional public reply on the triggering comment. 'skipped' if no commentReply was configured or if the DM failed (the public reply is not attempted in that case).
46
51
  attr_accessor :comment_reply_status
47
52
 
@@ -89,6 +94,8 @@ module Zernio
89
94
  :'commenter_is_follower' => :'commenterIsFollower',
90
95
  :'commenter_follower_count' => :'commenterFollowerCount',
91
96
  :'error' => :'error',
97
+ :'platform_error' => :'platformError',
98
+ :'private_reply_consumed' => :'privateReplyConsumed',
92
99
  :'comment_reply_status' => :'commentReplyStatus',
93
100
  :'comment_reply_error' => :'commentReplyError',
94
101
  :'next_due_at' => :'nextDueAt',
@@ -120,6 +127,8 @@ module Zernio
120
127
  :'commenter_is_follower' => :'Boolean',
121
128
  :'commenter_follower_count' => :'Integer',
122
129
  :'error' => :'String',
130
+ :'platform_error' => :'GetCommentAutomation200ResponseLogsInnerPlatformError',
131
+ :'private_reply_consumed' => :'Boolean',
123
132
  :'comment_reply_status' => :'String',
124
133
  :'comment_reply_error' => :'String',
125
134
  :'next_due_at' => :'Time',
@@ -193,6 +202,14 @@ module Zernio
193
202
  self.error = attributes[:'error']
194
203
  end
195
204
 
205
+ if attributes.key?(:'platform_error')
206
+ self.platform_error = attributes[:'platform_error']
207
+ end
208
+
209
+ if attributes.key?(:'private_reply_consumed')
210
+ self.private_reply_consumed = attributes[:'private_reply_consumed']
211
+ end
212
+
196
213
  if attributes.key?(:'comment_reply_status')
197
214
  self.comment_reply_status = attributes[:'comment_reply_status']
198
215
  end
@@ -289,6 +306,8 @@ module Zernio
289
306
  commenter_is_follower == o.commenter_is_follower &&
290
307
  commenter_follower_count == o.commenter_follower_count &&
291
308
  error == o.error &&
309
+ platform_error == o.platform_error &&
310
+ private_reply_consumed == o.private_reply_consumed &&
292
311
  comment_reply_status == o.comment_reply_status &&
293
312
  comment_reply_error == o.comment_reply_error &&
294
313
  next_due_at == o.next_due_at &&
@@ -304,7 +323,7 @@ module Zernio
304
323
  # Calculates hash code according to all attributes.
305
324
  # @return [Integer] Hash code
306
325
  def hash
307
- [id, comment_id, commenter_id, commenter_name, comment_text, source, status, audience_outcome, commenter_is_follower, commenter_follower_count, error, comment_reply_status, comment_reply_error, next_due_at, created_at].hash
326
+ [id, comment_id, commenter_id, commenter_name, comment_text, source, status, audience_outcome, commenter_is_follower, commenter_follower_count, error, platform_error, private_reply_consumed, comment_reply_status, comment_reply_error, next_due_at, created_at].hash
308
327
  end
309
328
 
310
329
  # Builds the object from hash
@@ -0,0 +1,157 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ # Platform error codes of the failed DM (Meta `code` and `error_subcode`), when the platform sent them. Absent on successful rows and on rows written before this field existed.
18
+ class GetCommentAutomation200ResponseLogsInnerPlatformError < ApiModelBase
19
+ attr_accessor :code
20
+
21
+ attr_accessor :subcode
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'code' => :'code',
27
+ :'subcode' => :'subcode'
28
+ }
29
+ end
30
+
31
+ # Returns attribute mapping this model knows about
32
+ def self.acceptable_attribute_map
33
+ attribute_map
34
+ end
35
+
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ acceptable_attribute_map.values
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'code' => :'Integer',
45
+ :'subcode' => :'Integer'
46
+ }
47
+ end
48
+
49
+ # List of attributes with nullable: true
50
+ def self.openapi_nullable
51
+ Set.new([
52
+ ])
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param [Hash] attributes Model attributes in the form of hash
57
+ def initialize(attributes = {})
58
+ if (!attributes.is_a?(Hash))
59
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError` initialize method"
60
+ end
61
+
62
+ # check to see if the attribute exists and convert string to symbol for hash key
63
+ acceptable_attribute_map = self.class.acceptable_attribute_map
64
+ attributes = attributes.each_with_object({}) { |(k, v), h|
65
+ if (!acceptable_attribute_map.key?(k.to_sym))
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
67
+ end
68
+ h[k.to_sym] = v
69
+ }
70
+
71
+ if attributes.key?(:'code')
72
+ self.code = attributes[:'code']
73
+ end
74
+
75
+ if attributes.key?(:'subcode')
76
+ self.subcode = attributes[:'subcode']
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
84
+ invalid_properties = Array.new
85
+ invalid_properties
86
+ end
87
+
88
+ # Check to see if the all the properties in the model are valid
89
+ # @return true if the model is valid
90
+ def valid?
91
+ warn '[DEPRECATED] the `valid?` method is obsolete'
92
+ true
93
+ end
94
+
95
+ # Checks equality by comparing each attribute.
96
+ # @param [Object] Object to be compared
97
+ def ==(o)
98
+ return true if self.equal?(o)
99
+ self.class == o.class &&
100
+ code == o.code &&
101
+ subcode == o.subcode
102
+ end
103
+
104
+ # @see the `==` method
105
+ # @param [Object] Object to be compared
106
+ def eql?(o)
107
+ self == o
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Integer] Hash code
112
+ def hash
113
+ [code, subcode].hash
114
+ end
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def self.build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+ attributes = attributes.transform_keys(&:to_sym)
122
+ transformed_hash = {}
123
+ openapi_types.each_pair do |key, type|
124
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = nil
126
+ elsif type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the attribute
128
+ # is documented as an array but the input is not
129
+ if attributes[attribute_map[key]].is_a?(Array)
130
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
131
+ end
132
+ elsif !attributes[attribute_map[key]].nil?
133
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
134
+ end
135
+ end
136
+ new(transformed_hash)
137
+ end
138
+
139
+ # Returns the object in the form of hash
140
+ # @return [Hash] Returns the object in the form of hash
141
+ def to_hash
142
+ hash = {}
143
+ self.class.attribute_map.each_pair do |attr, param|
144
+ value = self.send(attr)
145
+ if value.nil?
146
+ is_nullable = self.class.openapi_nullable.include?(attr)
147
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
148
+ end
149
+
150
+ hash[param] = _to_hash(value)
151
+ end
152
+ hash
153
+ end
154
+
155
+ end
156
+
157
+ end
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Zernio
14
- VERSION = '0.0.945'
14
+ VERSION = '0.0.946'
15
15
  end
data/lib/zernio-sdk.rb CHANGED
@@ -643,6 +643,7 @@ require 'zernio-sdk/models/get_campaign_targeting200_response_locations_inner'
643
643
  require 'zernio-sdk/models/get_comment_automation200_response'
644
644
  require 'zernio-sdk/models/get_comment_automation200_response_automation'
645
645
  require 'zernio-sdk/models/get_comment_automation200_response_logs_inner'
646
+ require 'zernio-sdk/models/get_comment_automation200_response_logs_inner_platform_error'
646
647
  require 'zernio-sdk/models/get_connect_url200_response'
647
648
  require 'zernio-sdk/models/get_contact200_response'
648
649
  require 'zernio-sdk/models/get_contact200_response_channels_inner'
data/openapi.yaml CHANGED
@@ -43246,6 +43246,11 @@ paths:
43246
43246
  commenterIsFollower: { type: boolean, description: "Follow relationship at decision time. Absent when Instagram would not tell us (the commenter never messaged the account)." }
43247
43247
  commenterFollowerCount: { type: integer }
43248
43248
  error: { type: string, description: DM error message if status is failed }
43249
+ platformError:
43250
+ type: object
43251
+ description: "Platform error codes of the failed DM (Meta `code` and `error_subcode`), when the platform sent them. Absent on successful rows and on rows written before this field existed."
43252
+ properties: { code: { type: integer }, subcode: { type: integer } }
43253
+ privateReplyConsumed: { type: boolean, description: "True when the failed send spent the comment's single Instagram private reply (subcode 1545133 or 2534023), the same rule as `details.privateReplyConsumed` on the private-reply endpoint. Absent on direct DMs, on Facebook, and on rows written before this field existed." }
43249
43254
  commentReplyStatus: { type: string, enum: [sent, failed, skipped], description: "Outcome of the optional public reply on the triggering comment. 'skipped' if no commentReply was configured or if the DM failed (the public reply is not attempted in that case)." }
43250
43255
  commentReplyError: { type: string, description: Public-reply error message if commentReplyStatus is failed }
43251
43256
  nextDueAt: { type: string, format: date-time, description: "When the next queued send fires. Present only while something is still pending." }
@@ -43396,6 +43401,11 @@ paths:
43396
43401
  commenterIsFollower: { type: boolean, description: "Follow relationship at decision time. Absent when Instagram would not tell us (the commenter never messaged the account)." }
43397
43402
  commenterFollowerCount: { type: integer }
43398
43403
  error: { type: string, description: DM error message if status is failed }
43404
+ platformError:
43405
+ type: object
43406
+ description: "Platform error codes of the failed DM (Meta `code` and `error_subcode`), when the platform sent them. Absent on successful rows and on rows written before this field existed."
43407
+ properties: { code: { type: integer }, subcode: { type: integer } }
43408
+ privateReplyConsumed: { type: boolean, description: "True when the failed send spent the comment's single Instagram private reply (subcode 1545133 or 2534023), the same rule as `details.privateReplyConsumed` on the private-reply endpoint. Absent on direct DMs, on Facebook, and on rows written before this field existed." }
43399
43409
  commentReplyStatus: { type: string, enum: [sent, failed, skipped], description: "Outcome of the optional public reply on the triggering comment. 'skipped' if no commentReply was configured or if the DM failed (the public reply is not attempted in that case)." }
43400
43410
  commentReplyError: { type: string, description: Public-reply error message if commentReplyStatus is failed }
43401
43411
  nextDueAt: { type: string, format: date-time, description: "When the next queued send fires. Present only while something is still pending." }
@@ -0,0 +1,42 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api Versioning and deprecation: all endpoints are versioned in the URL path (current version: /v1). Breaking changes only ship in a new path version; existing versions keep working. Deprecated operations are marked 'deprecated: true' in this spec and announced in the changelog (https://zernio.com/changelog) before removal. Errors: every 4xx/5xx response is application/json with a machine-readable 'code' and a human-readable 'error' message (see the ErrorResponse schema).
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError do
21
+ #let(:instance) { Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError.new }
22
+
23
+ describe 'test an instance of GetCommentAutomation200ResponseLogsInnerPlatformError' do
24
+ it 'should create an instance of GetCommentAutomation200ResponseLogsInnerPlatformError' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::GetCommentAutomation200ResponseLogsInnerPlatformError)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "code"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "subcode"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ end
@@ -105,6 +105,18 @@ describe Zernio::GetCommentAutomation200ResponseLogsInner do
105
105
  end
106
106
  end
107
107
 
108
+ describe 'test attribute "platform_error"' do
109
+ it 'should work' do
110
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
111
+ end
112
+ end
113
+
114
+ describe 'test attribute "private_reply_consumed"' do
115
+ it 'should work' do
116
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
117
+ end
118
+ end
119
+
108
120
  describe 'test attribute "comment_reply_status"' do
109
121
  it 'should work' do
110
122
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: late-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.945
4
+ version: 0.0.946
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
@@ -725,6 +725,7 @@ files:
725
725
  - docs/GetCommentAutomation200Response.md
726
726
  - docs/GetCommentAutomation200ResponseAutomation.md
727
727
  - docs/GetCommentAutomation200ResponseLogsInner.md
728
+ - docs/GetCommentAutomation200ResponseLogsInnerPlatformError.md
728
729
  - docs/GetConnectUrl200Response.md
729
730
  - docs/GetContact200Response.md
730
731
  - docs/GetContact200ResponseChannelsInner.md
@@ -2877,6 +2878,7 @@ files:
2877
2878
  - lib/zernio-sdk/models/get_comment_automation200_response.rb
2878
2879
  - lib/zernio-sdk/models/get_comment_automation200_response_automation.rb
2879
2880
  - lib/zernio-sdk/models/get_comment_automation200_response_logs_inner.rb
2881
+ - lib/zernio-sdk/models/get_comment_automation200_response_logs_inner_platform_error.rb
2880
2882
  - lib/zernio-sdk/models/get_connect_url200_response.rb
2881
2883
  - lib/zernio-sdk/models/get_contact200_response.rb
2882
2884
  - lib/zernio-sdk/models/get_contact200_response_channels_inner.rb
@@ -4984,6 +4986,7 @@ files:
4984
4986
  - spec/models/get_campaign_targeting200_response_locations_inner_spec.rb
4985
4987
  - spec/models/get_campaign_targeting200_response_spec.rb
4986
4988
  - spec/models/get_comment_automation200_response_automation_spec.rb
4989
+ - spec/models/get_comment_automation200_response_logs_inner_platform_error_spec.rb
4987
4990
  - spec/models/get_comment_automation200_response_logs_inner_spec.rb
4988
4991
  - spec/models/get_comment_automation200_response_spec.rb
4989
4992
  - spec/models/get_connect_url200_response_spec.rb
@@ -6400,7 +6403,7 @@ files:
6400
6403
  - spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
6401
6404
  - spec/models/you_tube_video_retention_response_spec.rb
6402
6405
  - spec/spec_helper.rb
6403
- - zernio-sdk-0.0.945.gem
6406
+ - zernio-sdk-0.0.946.gem
6404
6407
  - zernio-sdk.gemspec
6405
6408
  homepage: https://openapi-generator.tech
6406
6409
  licenses:
@@ -6830,6 +6833,7 @@ test_files:
6830
6833
  - spec/models/update_youtube_default_playlist200_response_spec.rb
6831
6834
  - spec/models/get_sip_trunk200_response_numbers_inner_spec.rb
6832
6835
  - spec/models/inline_object4_details_spec.rb
6836
+ - spec/models/get_comment_automation200_response_logs_inner_platform_error_spec.rb
6833
6837
  - spec/models/value_rule_set_spec.rb
6834
6838
  - spec/models/get_whats_app_number_info200_response_phone_spec.rb
6835
6839
  - spec/models/send_private_reply_to_comment_request_buttons_inner_spec.rb
Binary file