nova_spicehtml5_proxy_spec.rb 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. require 'spec_helper'
  2. describe 'nova::spicehtml5proxy' do
  3. let :pre_condition do
  4. 'include nova'
  5. end
  6. shared_examples 'nova-spicehtml5proxy' do
  7. it 'configures nova.conf' do
  8. is_expected.to contain_nova_config('spice/html5proxy_host').with(:value => '0.0.0.0')
  9. is_expected.to contain_nova_config('spice/html5proxy_port').with(:value => '6082')
  10. end
  11. it { is_expected.to contain_package('nova-spicehtml5proxy').with(
  12. :name => platform_params[:spicehtml5proxy_package_name],
  13. :ensure => 'present'
  14. ) }
  15. it { is_expected.to contain_service('nova-spicehtml5proxy').with(
  16. :name => platform_params[:spicehtml5proxy_service_name],
  17. :hasstatus => 'true',
  18. :ensure => 'running'
  19. )}
  20. context 'with manage_service as false' do
  21. let :params do
  22. { :enabled => true,
  23. :manage_service => false
  24. }
  25. end
  26. it { is_expected.to contain_service('nova-spicehtml5proxy').without_ensure }
  27. end
  28. context 'with package version' do
  29. let :params do
  30. { :ensure_package => '2012.1-2' }
  31. end
  32. it { is_expected.to contain_package('nova-spicehtml5proxy').with(
  33. :ensure => params[:ensure_package]
  34. )}
  35. end
  36. end
  37. context 'on Ubuntu system' do
  38. let :facts do
  39. @default_facts.merge({
  40. :osfamily => 'Debian',
  41. :operatingsystem => 'Ubuntu',
  42. :os_package_type => 'ubuntu'
  43. })
  44. end
  45. let :platform_params do
  46. { :spicehtml5proxy_package_name => 'nova-spiceproxy',
  47. :spicehtml5proxy_service_name => 'nova-spiceproxy' }
  48. end
  49. it_configures 'nova-spicehtml5proxy'
  50. end
  51. context 'on Debian system' do
  52. let :facts do
  53. @default_facts.merge({
  54. :osfamily => 'Debian',
  55. :operatingsystem => 'Debian',
  56. :os_package_type => 'debian'
  57. })
  58. end
  59. let :platform_params do
  60. { :spicehtml5proxy_package_name => 'nova-consoleproxy',
  61. :spicehtml5proxy_service_name => 'nova-spicehtml5proxy' }
  62. end
  63. it_configures 'nova-spicehtml5proxy'
  64. end
  65. context 'on Ubuntu system with Debian packages' do
  66. let :facts do
  67. @default_facts.merge({
  68. :osfamily => 'Debian',
  69. :operatingsystem => 'Ubuntu',
  70. :os_package_type => 'debian'
  71. })
  72. end
  73. let :platform_params do
  74. { :spicehtml5proxy_package_name => 'nova-consoleproxy',
  75. :spicehtml5proxy_service_name => 'nova-spicehtml5proxy' }
  76. end
  77. it_configures 'nova-spicehtml5proxy'
  78. end
  79. context 'on Redhat platforms' do
  80. let :facts do
  81. @default_facts.merge({ :osfamily => 'RedHat' })
  82. end
  83. let :platform_params do
  84. { :spicehtml5proxy_package_name => 'openstack-nova-console',
  85. :spicehtml5proxy_service_name => 'openstack-nova-spicehtml5proxy' }
  86. end
  87. it_configures 'nova-spicehtml5proxy'
  88. end
  89. end