Module: Sfn::MockMacros::SecretsManager

Included in:
Sfn::MockMacros
Defined in:
lib/sfn/mock_macros/secrets_manager.rb

Class Method Summary collapse

Class Method Details

.response(data) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/sfn/mock_macros/secrets_manager.rb', line 6

def self.response(data)
  data = [data] if data.is_a?(Hash)
  out_data = data.map do |val|
    if val.key?(:error)
      { Throw: { Error: val[:error], Cause: val[:cause] } }
    else
      val[:response] ||= val[:payload]
      val[:response] ||= val[:output]
      { Return: response_body(val) }
    end
  end
  out = {}
  out_data.each_with_index do |val, idx|
    out[idx.to_s] = val
  end
  out
end

.response_body(val) ⇒ Object



24
25
26
27
28
# File 'lib/sfn/mock_macros/secrets_manager.rb', line 24

def self.response_body(val)
  { ARN: val[:arn], CreatedDate: val[:created_date], Name: val[:name], SecretBinary: val[:secret_binary],
    SecretString: val[:response], VersionId: val[:version_id],
    VersionStages: (val[:version_stages] ? [val[:version_stages]] : nil) }.compact
end