Class: PactBroker::Matrix::DeploymentStatusSummary
- Inherits:
-
Object
- Object
- PactBroker::Matrix::DeploymentStatusSummary
- Includes:
- Logging
- Defined in:
- lib/pact_broker/matrix/deployment_status_summary.rb
Instance Attribute Summary collapse
-
#integrations ⇒ Object
readonly
Returns the value of attribute integrations.
-
#resolved_selectors ⇒ Object
readonly
Returns the value of attribute resolved_selectors.
-
#rows ⇒ Object
readonly
Returns the value of attribute rows.
Instance Method Summary collapse
- #counts ⇒ Object
- #deployable? ⇒ Boolean
-
#initialize(rows, resolved_selectors, integrations) ⇒ DeploymentStatusSummary
constructor
A new instance of DeploymentStatusSummary.
- #reasons ⇒ Object
Methods included from Logging
Constructor Details
#initialize(rows, resolved_selectors, integrations) ⇒ DeploymentStatusSummary
Returns a new instance of DeploymentStatusSummary.
11 12 13 14 15 16 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 11 def initialize(rows, resolved_selectors, integrations) @rows = rows @resolved_selectors = resolved_selectors @integrations = integrations @dummy_selectors = create_dummy_selectors end |
Instance Attribute Details
#integrations ⇒ Object (readonly)
Returns the value of attribute integrations.
9 10 11 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 9 def integrations @integrations end |
#resolved_selectors ⇒ Object (readonly)
Returns the value of attribute resolved_selectors.
9 10 11 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 9 def resolved_selectors @resolved_selectors end |
#rows ⇒ Object (readonly)
Returns the value of attribute rows.
9 10 11 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 9 def rows @rows end |
Instance Method Details
#counts ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 18 def counts { success: rows.count{ |row| row.success }, failed: rows.count { |row| row.success == false }, unknown: required_integrations_without_a_row.count + rows.count { |row| row.success.nil? } } end |
#deployable? ⇒ Boolean
26 27 28 29 30 31 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 26 def deployable? return false if specified_selectors_that_do_not_exist.any? return nil if rows.any?{ |row| row.success.nil? } return nil if required_integrations_without_a_row.any? rows.all?{ |row| row.success } # true if rows is empty end |
#reasons ⇒ Object
33 34 35 |
# File 'lib/pact_broker/matrix/deployment_status_summary.rb', line 33 def reasons .any? ? : end |