Class: PactBroker::Matrix::QuickRow

Inherits:
Object
  • Object
show all
Defined in:
lib/pact_broker/matrix/quick_row.rb

Constant Summary collapse

CONSUMER_ID =
PROVIDER_ID =
CONSUMER_VERSION_ID =
PROVIDER_VERSION_ID =
PACT_PUBLICATION_ID =
VERIFICATION_ID =

Instance Method Summary collapse

Instance Method Details

#<=>(other) ⇒ Object

Add logic for ignoring case



211
212
213
214
215
216
217
218
219
220
221
222
# File 'lib/pact_broker/matrix/quick_row.rb', line 211

def <=> other
  comparisons = [
    compare_name_asc(consumer_name, other.consumer_name),
    compare_number_desc(consumer_version_order, other.consumer_version_order),
    compare_number_desc(pact_revision_number, other.pact_revision_number),
    compare_name_asc(provider_name, other.provider_name),
    compare_number_desc(provider_version_order, other.provider_version_order),
    compare_number_desc(verification_id, other.verification_id)
  ]

  comparisons.find{|c| c != 0 } || 0
end

#compare_name_asc(name1, name2) ⇒ Object



224
225
226
# File 'lib/pact_broker/matrix/quick_row.rb', line 224

def compare_name_asc name1, name2
  name1 <=> name2
end

#compare_number_desc(number1, number2) ⇒ Object



232
233
234
235
236
237
238
239
240
# File 'lib/pact_broker/matrix/quick_row.rb', line 232

def compare_number_desc number1, number2
  if number1 && number2
    number2 <=> number1
  elsif number1
    1
  else
    -1
  end
end

#eql?(obj) ⇒ Boolean

Returns:

  • (Boolean)


242
243
244
# File 'lib/pact_broker/matrix/quick_row.rb', line 242

def eql?(obj)
  (obj.class == model) && (obj.values == values)
end

#involves_pacticipant_with_name?(pacticipant_name) ⇒ Boolean

Returns:

  • (Boolean)


250
251
252
# File 'lib/pact_broker/matrix/quick_row.rb', line 250

def involves_pacticipant_with_name?(pacticipant_name)
  pacticipant_name.include?(pacticipant_name)
end

#pact_created_atObject



202
203
204
# File 'lib/pact_broker/matrix/quick_row.rb', line 202

def pact_created_at
  pact_publication.created_at
end

#pact_revision_numberObject



190
191
192
# File 'lib/pact_broker/matrix/quick_row.rb', line 190

def pact_revision_number
  pact_publication.revision_number
end

#pact_version_shaObject



186
187
188
# File 'lib/pact_broker/matrix/quick_row.rb', line 186

def pact_version_sha
  pact_version.sha
end

#pacticipant_namesObject



246
247
248
# File 'lib/pact_broker/matrix/quick_row.rb', line 246

def pacticipant_names
  [consumer_name, provider_name]
end

#successObject



182
183
184
# File 'lib/pact_broker/matrix/quick_row.rb', line 182

def success
  verification&.success
end

#to_sObject



228
229
230
# File 'lib/pact_broker/matrix/quick_row.rb', line 228

def to_s
  "#{consumer_name} v#{consumer_version_number} #{provider_name} #{provider_version_number} #{success}"
end

#verification_executed_atObject



206
207
208
# File 'lib/pact_broker/matrix/quick_row.rb', line 206

def verification_executed_at
  verification&.execution_date
end

#verification_numberObject



194
195
196
# File 'lib/pact_broker/matrix/quick_row.rb', line 194

def verification_number
  verification&.number
end