require 'spec_helper' describe 'keystone::cache' do let :params do {} end shared_examples_for 'keystone::cache' do context 'with default parameters' do it 'configures cache' do is_expected.to contain_keystone_config('token/caching').with_value('') is_expected.to contain_oslo__cache('keystone_config').with( :config_prefix => '', :expiration_time => '', :backend => '', :backend_argument => '', :proxies => '', :enabled => '', :debug_cache_backend => '', :memcache_servers => '', :memcache_dead_retry => '', :memcache_socket_timeout => '', :memcache_pool_maxsize => '', :memcache_pool_unused_timeout => '', :memcache_pool_connection_get_timeout => '', :tls_enabled => '', :tls_cafile => '', :tls_certfile => '', :tls_keyfile => '', :tls_allowed_ciphers => '', :manage_backend_package => true, ) end end context 'with overridden parameters' do let :params do { :config_prefix => 'prefix', :expiration_time => 3600, :backend => 'oslo_cache.memcache_pool', :proxies => ['proxy01:8888', 'proxy02:8888'], :enabled => true, :debug_cache_backend => false, :memcache_servers => ['memcached01:11211', 'memcached02:11211'], :memcache_dead_retry => '60', :memcache_socket_timeout => '300.0', :memcache_pool_maxsize => '10', :memcache_pool_unused_timeout => '120', :memcache_pool_connection_get_timeout => '360', :tls_enabled => false, :manage_backend_package => false, :token_caching => true, } end it 'configures cache' do is_expected.to contain_keystone_config('token/caching').with_value(true) is_expected.to contain_oslo__cache('keystone_config').with( :config_prefix => 'prefix', :expiration_time => 3600, :backend => 'oslo_cache.memcache_pool', :backend_argument => '', :proxies => ['proxy01:8888', 'proxy02:8888'], :enabled => true, :debug_cache_backend => false, :memcache_servers => ['memcached01:11211', 'memcached02:11211'], :memcache_dead_retry => '60', :memcache_socket_timeout => '300.0', :memcache_pool_maxsize => '10', :memcache_pool_unused_timeout => '120', :memcache_pool_connection_get_timeout => '360', :tls_enabled => false, :tls_cafile => '', :tls_certfile => '', :tls_keyfile => '', :tls_allowed_ciphers => '', :manage_backend_package => false, ) end end end on_supported_os({ :supported_os => OSDefaults.get_supported_os }).each do |os,facts| context "on #{os}" do let (:facts) do facts.merge!(OSDefaults.get_facts()) end it_configures 'keystone::cache' end end end