2018-02-01 15:21:54 +00:00
|
|
|
require 'helper'
|
|
|
|
|
|
|
|
# MAKKPB = MockAwsKmsKeysPluralBackend
|
|
|
|
# Abbreviation not used outside this file
|
|
|
|
|
|
|
|
#=============================================================================#
|
|
|
|
# Constructor Tests
|
|
|
|
#=============================================================================#
|
|
|
|
class AwsKmsKeysConstructorTest < Minitest::Test
|
|
|
|
|
|
|
|
def setup
|
|
|
|
AwsKmsKeys::BackendFactory.select(MAKKPB::Empty)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_empty_params_ok
|
|
|
|
AwsKmsKeys.new
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_rejects_unrecognized_params
|
|
|
|
assert_raises(ArgumentError) { AwsKmsKeys.new(shoe_size: 9) }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
#=============================================================================#
|
|
|
|
# Search / Recall
|
|
|
|
#=============================================================================#
|
|
|
|
class AwsKmsKeysRecallEmptyTest < Minitest::Test
|
|
|
|
|
|
|
|
def setup
|
|
|
|
AwsKmsKeys::BackendFactory.select(MAKKPB::Empty)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_search_miss_key_empty_kms_key_list
|
|
|
|
refute AwsKmsKeys.new.exists?
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
class AwsKmsKeysRecallBasicTest < Minitest::Test
|
|
|
|
|
|
|
|
def setup
|
|
|
|
AwsKmsKeys::BackendFactory.select(MAKKPB::Basic)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_search_hit_via_empty_filter
|
|
|
|
assert AwsKmsKeys.new.exists?
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
#=============================================================================#
|
|
|
|
# Properties
|
|
|
|
#=============================================================================#
|
|
|
|
class AwsKmsKeysProperties < Minitest::Test
|
|
|
|
def setup
|
|
|
|
AwsKmsKeys::BackendFactory.select(MAKKPB::Basic)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_property_key_ids
|
|
|
|
basic = AwsKmsKeys.new
|
|
|
|
assert_kind_of(Array, basic.key_ids)
|
|
|
|
assert(basic.key_ids.include?('012026a4-b657-42bf-99ae-111111111111'))
|
|
|
|
refute(basic.key_ids.include?(nil))
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_property_key_arns
|
|
|
|
basic = AwsKmsKeys.new
|
|
|
|
assert_kind_of(Array, basic.key_arns)
|
|
|
|
assert(basic.key_arns.include?('arn:aws:kms:us-east-1::key/012026a4-b657-42bf-99ae-111111111111'))
|
|
|
|
refute(basic.key_arns.include?(nil))
|
|
|
|
end
|
|
|
|
end
|
|
|
|
#=============================================================================#
|
|
|
|
# Test Fixtures
|
|
|
|
#=============================================================================#
|
|
|
|
module MAKKPB
|
2018-02-08 04:26:37 +00:00
|
|
|
class Empty < AwsBackendBase
|
2018-02-01 15:21:54 +00:00
|
|
|
def list_keys(query = {})
|
|
|
|
OpenStruct.new({ keys: [] })
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-02-08 04:26:37 +00:00
|
|
|
class Basic < AwsBackendBase
|
2018-02-01 15:21:54 +00:00
|
|
|
def list_keys(query = {})
|
|
|
|
fixtures = [
|
|
|
|
OpenStruct.new({
|
|
|
|
key_id: '012026a4-b657-42bf-99ae-111111111111',
|
|
|
|
key_arn: 'arn:aws:kms:us-east-1::key/012026a4-b657-42bf-99ae-111111111111',
|
|
|
|
}),
|
|
|
|
OpenStruct.new({
|
|
|
|
key_id: '012026a4-b657-42bf-99ae-222222222222',
|
|
|
|
key_arn: 'arn:aws:kms:us-east-1::key/012026a4-b657-42bf-99ae-222222222222',
|
|
|
|
}),
|
|
|
|
OpenStruct.new({
|
|
|
|
key_id: '012026a4-b657-42bf-99ae-333333333333',
|
|
|
|
key_arn: 'arn:aws:kms:us-east-1::key/012026a4-b657-42bf-99ae-333333333333',
|
|
|
|
}),
|
|
|
|
]
|
|
|
|
|
|
|
|
OpenStruct.new({ keys: fixtures })
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|