phrase 3.1.1 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,293 @@
1
+ require 'date'
2
+
3
+ module Phrase
4
+ class ReleaseTrigger
5
+ attr_accessor :id
6
+
7
+ attr_accessor :branch
8
+
9
+ # Cron schedule for the scheduler. Read more about the format of this field at https://en.wikipedia.org/wiki/Cron
10
+ attr_accessor :cron_schedule
11
+
12
+ # Time zone for the scheduler
13
+ attr_accessor :time_zone
14
+
15
+ # The next time a release will be created for this trigger
16
+ attr_accessor :next_run_at
17
+
18
+ attr_accessor :app_min_version
19
+
20
+ attr_accessor :app_max_version
21
+
22
+ attr_accessor :locales
23
+
24
+ attr_accessor :tags
25
+
26
+ attr_accessor :created_at
27
+
28
+ attr_accessor :updated_at
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'id' => :'id',
34
+ :'branch' => :'branch',
35
+ :'cron_schedule' => :'cron_schedule',
36
+ :'time_zone' => :'time_zone',
37
+ :'next_run_at' => :'next_run_at',
38
+ :'app_min_version' => :'app_min_version',
39
+ :'app_max_version' => :'app_max_version',
40
+ :'locales' => :'locales',
41
+ :'tags' => :'tags',
42
+ :'created_at' => :'created_at',
43
+ :'updated_at' => :'updated_at'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ def self.openapi_types
49
+ {
50
+ :'id' => :'String',
51
+ :'branch' => :'String',
52
+ :'cron_schedule' => :'String',
53
+ :'time_zone' => :'String',
54
+ :'next_run_at' => :'DateTime',
55
+ :'app_min_version' => :'String',
56
+ :'app_max_version' => :'String',
57
+ :'locales' => :'Array<LocalePreview>',
58
+ :'tags' => :'Array<String>',
59
+ :'created_at' => :'DateTime',
60
+ :'updated_at' => :'DateTime'
61
+ }
62
+ end
63
+
64
+ # List of attributes with nullable: true
65
+ def self.openapi_nullable
66
+ Set.new([
67
+ ])
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ if (!attributes.is_a?(Hash))
74
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Phrase::ReleaseTrigger` initialize method"
75
+ end
76
+
77
+ # check to see if the attribute exists and convert string to symbol for hash key
78
+ attributes = attributes.each_with_object({}) { |(k, v), h|
79
+ if (!self.class.attribute_map.key?(k.to_sym))
80
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Phrase::ReleaseTrigger`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
81
+ end
82
+ h[k.to_sym] = v
83
+ }
84
+
85
+ if attributes.key?(:'id')
86
+ self.id = attributes[:'id']
87
+ end
88
+
89
+ if attributes.key?(:'branch')
90
+ self.branch = attributes[:'branch']
91
+ end
92
+
93
+ if attributes.key?(:'cron_schedule')
94
+ self.cron_schedule = attributes[:'cron_schedule']
95
+ end
96
+
97
+ if attributes.key?(:'time_zone')
98
+ self.time_zone = attributes[:'time_zone']
99
+ end
100
+
101
+ if attributes.key?(:'next_run_at')
102
+ self.next_run_at = attributes[:'next_run_at']
103
+ end
104
+
105
+ if attributes.key?(:'app_min_version')
106
+ self.app_min_version = attributes[:'app_min_version']
107
+ end
108
+
109
+ if attributes.key?(:'app_max_version')
110
+ self.app_max_version = attributes[:'app_max_version']
111
+ end
112
+
113
+ if attributes.key?(:'locales')
114
+ if (value = attributes[:'locales']).is_a?(Array)
115
+ self.locales = value
116
+ end
117
+ end
118
+
119
+ if attributes.key?(:'tags')
120
+ if (value = attributes[:'tags']).is_a?(Array)
121
+ self.tags = value
122
+ end
123
+ end
124
+
125
+ if attributes.key?(:'created_at')
126
+ self.created_at = attributes[:'created_at']
127
+ end
128
+
129
+ if attributes.key?(:'updated_at')
130
+ self.updated_at = attributes[:'updated_at']
131
+ end
132
+ end
133
+
134
+ # Show invalid properties with the reasons. Usually used together with valid?
135
+ # @return Array for valid properties with the reasons
136
+ def list_invalid_properties
137
+ invalid_properties = Array.new
138
+ invalid_properties
139
+ end
140
+
141
+ # Check to see if the all the properties in the model are valid
142
+ # @return true if the model is valid
143
+ def valid?
144
+ true
145
+ end
146
+
147
+ # Checks equality by comparing each attribute.
148
+ # @param [Object] Object to be compared
149
+ def ==(o)
150
+ return true if self.equal?(o)
151
+ self.class == o.class &&
152
+ id == o.id &&
153
+ branch == o.branch &&
154
+ cron_schedule == o.cron_schedule &&
155
+ time_zone == o.time_zone &&
156
+ next_run_at == o.next_run_at &&
157
+ app_min_version == o.app_min_version &&
158
+ app_max_version == o.app_max_version &&
159
+ locales == o.locales &&
160
+ tags == o.tags &&
161
+ created_at == o.created_at &&
162
+ updated_at == o.updated_at
163
+ end
164
+
165
+ # @see the `==` method
166
+ # @param [Object] Object to be compared
167
+ def eql?(o)
168
+ self == o
169
+ end
170
+
171
+ # Calculates hash code according to all attributes.
172
+ # @return [Integer] Hash code
173
+ def hash
174
+ [id, branch, cron_schedule, time_zone, next_run_at, app_min_version, app_max_version, locales, tags, created_at, updated_at].hash
175
+ end
176
+
177
+ # Builds the object from hash
178
+ # @param [Hash] attributes Model attributes in the form of hash
179
+ # @return [Object] Returns the model itself
180
+ def self.build_from_hash(attributes)
181
+ new.build_from_hash(attributes)
182
+ end
183
+
184
+ # Builds the object from hash
185
+ # @param [Hash] attributes Model attributes in the form of hash
186
+ # @return [Object] Returns the model itself
187
+ def build_from_hash(attributes)
188
+ return nil unless attributes.is_a?(Hash)
189
+ self.class.openapi_types.each_pair do |key, type|
190
+ if type =~ /\AArray<(.*)>/i
191
+ # check to ensure the input is an array given that the attribute
192
+ # is documented as an array but the input is not
193
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
194
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
195
+ end
196
+ elsif !attributes[self.class.attribute_map[key]].nil?
197
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
198
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
199
+ end
200
+
201
+ self
202
+ end
203
+
204
+ # Deserializes the data based on type
205
+ # @param string type Data type
206
+ # @param string value Value to be deserialized
207
+ # @return [Object] Deserialized data
208
+ def _deserialize(type, value)
209
+ case type.to_sym
210
+ when :DateTime
211
+ DateTime.parse(value)
212
+ when :Date
213
+ Date.parse(value)
214
+ when :Time
215
+ Time.parse(value)
216
+ when :String
217
+ value.to_s
218
+ when :Integer
219
+ value.to_i
220
+ when :Float
221
+ value.to_f
222
+ when :Boolean
223
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
224
+ true
225
+ else
226
+ false
227
+ end
228
+ when :Object
229
+ # generic object (usually a Hash), return directly
230
+ value
231
+ when /\AArray<(?<inner_type>.+)>\z/
232
+ inner_type = Regexp.last_match[:inner_type]
233
+ value.map { |v| _deserialize(inner_type, v) }
234
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
235
+ k_type = Regexp.last_match[:k_type]
236
+ v_type = Regexp.last_match[:v_type]
237
+ {}.tap do |hash|
238
+ value.each do |k, v|
239
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
240
+ end
241
+ end
242
+ else # model
243
+ Phrase.const_get(type).build_from_hash(value)
244
+ end
245
+ end
246
+
247
+ # Returns the string representation of the object
248
+ # @return [String] String presentation of the object
249
+ def to_s
250
+ to_hash.to_s
251
+ end
252
+
253
+ # to_body is an alias to to_hash (backward compatibility)
254
+ # @return [Hash] Returns the object in the form of hash
255
+ def to_body
256
+ to_hash
257
+ end
258
+
259
+ # Returns the object in the form of hash
260
+ # @return [Hash] Returns the object in the form of hash
261
+ def to_hash
262
+ hash = {}
263
+ self.class.attribute_map.each_pair do |attr, param|
264
+ value = self.send(attr)
265
+ if value.nil?
266
+ is_nullable = self.class.openapi_nullable.include?(attr)
267
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
268
+ end
269
+
270
+ hash[param] = _to_hash(value)
271
+ end
272
+ hash
273
+ end
274
+
275
+ # Outputs non-array value in the form of hash
276
+ # For object, use to_hash. Otherwise, just return the value
277
+ # @param [Object] value Any valid value
278
+ # @return [Hash] Returns the value in the form of hash
279
+ def _to_hash(value)
280
+ if value.is_a?(Array)
281
+ value.compact.map { |v| _to_hash(v) }
282
+ elsif value.is_a?(Hash)
283
+ {}.tap do |hash|
284
+ value.each { |k, v| hash[k] = _to_hash(v) }
285
+ end
286
+ elsif value.respond_to? :to_hash
287
+ value.to_hash
288
+ else
289
+ value
290
+ end
291
+ end
292
+ end
293
+ end
@@ -0,0 +1,261 @@
1
+ require 'date'
2
+
3
+ module Phrase
4
+ class ReleaseUpdateParameters1
5
+ # Cron schedule for the scheduler. Read more about the format of this field at https://en.wikipedia.org/wiki/Cron
6
+ attr_accessor :cron_schedule
7
+
8
+ # Time zone for the scheduler
9
+ attr_accessor :time_zone
10
+
11
+ # List of locale ids that will be included in the release.
12
+ attr_accessor :locale_ids
13
+
14
+ # Only include tagged keys in the release. For a key to be included it must be tagged with all tags provided
15
+ attr_accessor :tags
16
+
17
+ # Branch used for release
18
+ attr_accessor :branch
19
+
20
+ # The created releases will be available only for apps with version greater or equal to this value
21
+ attr_accessor :app_min_version
22
+
23
+ # The created releases will be available only for apps with version less or equal to this value
24
+ attr_accessor :app_max_version
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'cron_schedule' => :'cron_schedule',
30
+ :'time_zone' => :'time_zone',
31
+ :'locale_ids' => :'locale_ids',
32
+ :'tags' => :'tags',
33
+ :'branch' => :'branch',
34
+ :'app_min_version' => :'app_min_version',
35
+ :'app_max_version' => :'app_max_version'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.openapi_types
41
+ {
42
+ :'cron_schedule' => :'String',
43
+ :'time_zone' => :'String',
44
+ :'locale_ids' => :'Array<String>',
45
+ :'tags' => :'Array<String>',
46
+ :'branch' => :'String',
47
+ :'app_min_version' => :'String',
48
+ :'app_max_version' => :'String'
49
+ }
50
+ end
51
+
52
+ # List of attributes with nullable: true
53
+ def self.openapi_nullable
54
+ Set.new([
55
+ ])
56
+ end
57
+
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ def initialize(attributes = {})
61
+ if (!attributes.is_a?(Hash))
62
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Phrase::ReleaseUpdateParameters1` initialize method"
63
+ end
64
+
65
+ # check to see if the attribute exists and convert string to symbol for hash key
66
+ attributes = attributes.each_with_object({}) { |(k, v), h|
67
+ if (!self.class.attribute_map.key?(k.to_sym))
68
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Phrase::ReleaseUpdateParameters1`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
69
+ end
70
+ h[k.to_sym] = v
71
+ }
72
+
73
+ if attributes.key?(:'cron_schedule')
74
+ self.cron_schedule = attributes[:'cron_schedule']
75
+ end
76
+
77
+ if attributes.key?(:'time_zone')
78
+ self.time_zone = attributes[:'time_zone']
79
+ end
80
+
81
+ if attributes.key?(:'locale_ids')
82
+ if (value = attributes[:'locale_ids']).is_a?(Array)
83
+ self.locale_ids = value
84
+ end
85
+ end
86
+
87
+ if attributes.key?(:'tags')
88
+ if (value = attributes[:'tags']).is_a?(Array)
89
+ self.tags = value
90
+ end
91
+ end
92
+
93
+ if attributes.key?(:'branch')
94
+ self.branch = attributes[:'branch']
95
+ end
96
+
97
+ if attributes.key?(:'app_min_version')
98
+ self.app_min_version = attributes[:'app_min_version']
99
+ end
100
+
101
+ if attributes.key?(:'app_max_version')
102
+ self.app_max_version = attributes[:'app_max_version']
103
+ end
104
+ end
105
+
106
+ # Show invalid properties with the reasons. Usually used together with valid?
107
+ # @return Array for valid properties with the reasons
108
+ def list_invalid_properties
109
+ invalid_properties = Array.new
110
+ invalid_properties
111
+ end
112
+
113
+ # Check to see if the all the properties in the model are valid
114
+ # @return true if the model is valid
115
+ def valid?
116
+ true
117
+ end
118
+
119
+ # Checks equality by comparing each attribute.
120
+ # @param [Object] Object to be compared
121
+ def ==(o)
122
+ return true if self.equal?(o)
123
+ self.class == o.class &&
124
+ cron_schedule == o.cron_schedule &&
125
+ time_zone == o.time_zone &&
126
+ locale_ids == o.locale_ids &&
127
+ tags == o.tags &&
128
+ branch == o.branch &&
129
+ app_min_version == o.app_min_version &&
130
+ app_max_version == o.app_max_version
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Integer] Hash code
141
+ def hash
142
+ [cron_schedule, time_zone, locale_ids, tags, branch, app_min_version, app_max_version].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def self.build_from_hash(attributes)
149
+ new.build_from_hash(attributes)
150
+ end
151
+
152
+ # Builds the object from hash
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ # @return [Object] Returns the model itself
155
+ def build_from_hash(attributes)
156
+ return nil unless attributes.is_a?(Hash)
157
+ self.class.openapi_types.each_pair do |key, type|
158
+ if type =~ /\AArray<(.*)>/i
159
+ # check to ensure the input is an array given that the attribute
160
+ # is documented as an array but the input is not
161
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
162
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
163
+ end
164
+ elsif !attributes[self.class.attribute_map[key]].nil?
165
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
166
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
167
+ end
168
+
169
+ self
170
+ end
171
+
172
+ # Deserializes the data based on type
173
+ # @param string type Data type
174
+ # @param string value Value to be deserialized
175
+ # @return [Object] Deserialized data
176
+ def _deserialize(type, value)
177
+ case type.to_sym
178
+ when :DateTime
179
+ DateTime.parse(value)
180
+ when :Date
181
+ Date.parse(value)
182
+ when :Time
183
+ Time.parse(value)
184
+ when :String
185
+ value.to_s
186
+ when :Integer
187
+ value.to_i
188
+ when :Float
189
+ value.to_f
190
+ when :Boolean
191
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
192
+ true
193
+ else
194
+ false
195
+ end
196
+ when :Object
197
+ # generic object (usually a Hash), return directly
198
+ value
199
+ when /\AArray<(?<inner_type>.+)>\z/
200
+ inner_type = Regexp.last_match[:inner_type]
201
+ value.map { |v| _deserialize(inner_type, v) }
202
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
203
+ k_type = Regexp.last_match[:k_type]
204
+ v_type = Regexp.last_match[:v_type]
205
+ {}.tap do |hash|
206
+ value.each do |k, v|
207
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
208
+ end
209
+ end
210
+ else # model
211
+ Phrase.const_get(type).build_from_hash(value)
212
+ end
213
+ end
214
+
215
+ # Returns the string representation of the object
216
+ # @return [String] String presentation of the object
217
+ def to_s
218
+ to_hash.to_s
219
+ end
220
+
221
+ # to_body is an alias to to_hash (backward compatibility)
222
+ # @return [Hash] Returns the object in the form of hash
223
+ def to_body
224
+ to_hash
225
+ end
226
+
227
+ # Returns the object in the form of hash
228
+ # @return [Hash] Returns the object in the form of hash
229
+ def to_hash
230
+ hash = {}
231
+ self.class.attribute_map.each_pair do |attr, param|
232
+ value = self.send(attr)
233
+ if value.nil?
234
+ is_nullable = self.class.openapi_nullable.include?(attr)
235
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
236
+ end
237
+
238
+ hash[param] = _to_hash(value)
239
+ end
240
+ hash
241
+ end
242
+
243
+ # Outputs non-array value in the form of hash
244
+ # For object, use to_hash. Otherwise, just return the value
245
+ # @param [Object] value Any valid value
246
+ # @return [Hash] Returns the value in the form of hash
247
+ def _to_hash(value)
248
+ if value.is_a?(Array)
249
+ value.compact.map { |v| _to_hash(v) }
250
+ elsif value.is_a?(Hash)
251
+ {}.tap do |hash|
252
+ value.each { |k, v| hash[k] = _to_hash(v) }
253
+ end
254
+ elsif value.respond_to? :to_hash
255
+ value.to_hash
256
+ else
257
+ value
258
+ end
259
+ end
260
+ end
261
+ end
@@ -1,3 +1,3 @@
1
1
  module Phrase
2
- VERSION = '3.1.1'
2
+ VERSION = '3.2.0'
3
3
  end
data/lib/phrase.rb CHANGED
@@ -156,8 +156,11 @@ require 'phrase/models/projects_quality_performance_score200_response_any_of_err
156
156
  require 'phrase/models/projects_quality_performance_score_request'
157
157
  require 'phrase/models/release'
158
158
  require 'phrase/models/release_create_parameters'
159
+ require 'phrase/models/release_create_parameters1'
159
160
  require 'phrase/models/release_preview'
161
+ require 'phrase/models/release_trigger'
160
162
  require 'phrase/models/release_update_parameters'
163
+ require 'phrase/models/release_update_parameters1'
161
164
  require 'phrase/models/replies_list_parameters'
162
165
  require 'phrase/models/repo_sync'
163
166
  require 'phrase/models/repo_sync_event'
@@ -265,6 +268,7 @@ require 'phrase/api/organization_job_template_locales_api'
265
268
  require 'phrase/api/organization_job_templates_api'
266
269
  require 'phrase/api/projects_api'
267
270
  require 'phrase/api/quality_performance_score_api'
271
+ require 'phrase/api/release_triggers_api'
268
272
  require 'phrase/api/releases_api'
269
273
  require 'phrase/api/repo_syncs_api'
270
274
  require 'phrase/api/reports_api'
@@ -0,0 +1,98 @@
1
+ require 'spec_helper'
2
+ require 'json'
3
+
4
+ # Unit tests for Phrase::ReleaseTriggersApi
5
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
6
+ # Please update as you see appropriate
7
+ describe 'ReleaseTriggersApi' do
8
+ before do
9
+ # run before each test
10
+ @api_instance = Phrase::ReleaseTriggersApi.new
11
+ end
12
+
13
+ after do
14
+ # run after each test
15
+ end
16
+
17
+ describe 'test an instance of ReleaseTriggersApi' do
18
+ it 'should create an instance of ReleaseTriggersApi' do
19
+ expect(@api_instance).to be_instance_of(Phrase::ReleaseTriggersApi)
20
+ end
21
+ end
22
+
23
+ # unit tests for release_triggers_create
24
+ # Create a release trigger
25
+ # Create a new recurring release. New releases will be published automatically, based on the cron schedule provided. Currently, only one release trigger can exist per distribution.
26
+ # @param account_id Account ID
27
+ # @param distribution_id Distribution ID
28
+ # @param release_create_parameters1
29
+ # @param [Hash] opts the optional parameters
30
+ # @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
31
+ # @return [ReleaseTrigger]
32
+ describe 'release_triggers_create test' do
33
+ it 'should work' do
34
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
35
+ end
36
+ end
37
+
38
+ # unit tests for release_triggers_destroy
39
+ # Delete a single release trigger
40
+ # Delete a single release trigger.
41
+ # @param account_id Account ID
42
+ # @param distribution_id Distribution ID
43
+ # @param id ID
44
+ # @param [Hash] opts the optional parameters
45
+ # @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
46
+ # @return [nil]
47
+ describe 'release_triggers_destroy test' do
48
+ it 'should work' do
49
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
50
+ end
51
+ end
52
+
53
+ # unit tests for release_triggers_list
54
+ # List release triggers
55
+ # List all release triggers for the given distribution.&lt;br&gt; Note: Currently only one release trigger can exist per distribution.
56
+ # @param account_id Account ID
57
+ # @param distribution_id Distribution ID
58
+ # @param [Hash] opts the optional parameters
59
+ # @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
60
+ # @return [Array<ReleaseTrigger>]
61
+ describe 'release_triggers_list test' do
62
+ it 'should work' do
63
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
64
+ end
65
+ end
66
+
67
+ # unit tests for release_triggers_show
68
+ # Get a single release trigger
69
+ # Get details of a single release trigger.
70
+ # @param account_id Account ID
71
+ # @param distribution_id Distribution ID
72
+ # @param id ID
73
+ # @param [Hash] opts the optional parameters
74
+ # @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
75
+ # @return [ReleaseTrigger]
76
+ describe 'release_triggers_show test' do
77
+ it 'should work' do
78
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
79
+ end
80
+ end
81
+
82
+ # unit tests for release_triggers_update
83
+ # Update a release trigger
84
+ # Update a recurring release.
85
+ # @param account_id Account ID
86
+ # @param distribution_id Distribution ID
87
+ # @param id ID
88
+ # @param release_update_parameters1
89
+ # @param [Hash] opts the optional parameters
90
+ # @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
91
+ # @return [ReleaseTrigger]
92
+ describe 'release_triggers_update test' do
93
+ it 'should work' do
94
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
95
+ end
96
+ end
97
+
98
+ end