class PactBroker::Verifications::PseudoBranchStatus

Attributes

latest_pact[R]
latest_verification[R]

Public Class Methods

new(latest_pact, latest_verification) click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 13
def initialize latest_pact, latest_verification
  @latest_pact = latest_pact
  @latest_verification = latest_verification
end

Public Instance Methods

to_s() click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 18
def to_s
  to_sym.to_s
end
to_sym() click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 22
def to_sym
  return :never unless latest_pact
  return :never unless ever_verified?
  if latest_verification_successful?
    if pact_changed_since_last_verification?
      :stale
    else
      :success
    end
  elsif latest_verification.failed_and_pact_pending?
    :failed_pending
  else
    :failed
  end
end

Private Instance Methods

ever_verified?() click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 50
def ever_verified?
  !!latest_verification
end
latest_verification_successful?() click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 42
def latest_verification_successful?
  latest_verification.success
end
pact_changed_since_last_verification?() click to toggle source
# File lib/pact_broker/verifications/pseudo_branch_status.rb, line 46
def pact_changed_since_last_verification?
  latest_verification.pact_version_sha != latest_pact.pact_version_sha
end