nova_vnc_proxy_spec.rb 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. require 'spec_helper'
  2. describe 'nova::vncproxy' do
  3. let :pre_condition do
  4. 'include nova'
  5. end
  6. context 'with default parameters' do
  7. describe 'on debian platforms' do
  8. let :facts do
  9. @default_facts.merge({ :osfamily => 'Debian' })
  10. end
  11. it { is_expected.to contain_nova_config('vnc/novncproxy_host').with(:value => '0.0.0.0') }
  12. it { is_expected.to contain_nova_config('vnc/novncproxy_port').with(:value => '6080') }
  13. it { is_expected.to contain_nova_config('vnc/novncproxy_base_url').with(:value => 'http://0.0.0.0:6080/vnc_auto.html') }
  14. it { is_expected.to contain_package('nova-vncproxy').with(
  15. :name => 'nova-novncproxy',
  16. :ensure => 'present'
  17. ) }
  18. it { is_expected.to contain_service('nova-vncproxy').with(
  19. :name => 'nova-novncproxy',
  20. :hasstatus => true,
  21. :ensure => 'running'
  22. )}
  23. describe 'with manage_service as false' do
  24. let :params do
  25. { :enabled => true,
  26. :manage_service => false
  27. }
  28. end
  29. it { is_expected.to contain_service('nova-vncproxy').without_ensure }
  30. end
  31. describe 'with package version' do
  32. let :params do
  33. {:ensure_package => '2012.1-2'}
  34. end
  35. it { is_expected.to contain_package('nova-vncproxy').with(
  36. 'ensure' => '2012.1-2'
  37. )}
  38. end
  39. end
  40. end
  41. describe 'on debian OS' do
  42. let :facts do
  43. @default_facts.merge({
  44. :osfamily => 'Debian',
  45. :operatingsystem => 'Debian',
  46. :os_package_type => 'debian'
  47. })
  48. end
  49. it { is_expected.to contain_package('nova-vncproxy').with(
  50. :name => "nova-consoleproxy",
  51. :ensure => 'present'
  52. )}
  53. it { is_expected.to contain_service('nova-vncproxy').with(
  54. :name => 'nova-novncproxy',
  55. :hasstatus => true,
  56. :ensure => 'running'
  57. )}
  58. end
  59. describe 'on Ubuntu OS with Debian packages' do
  60. let :facts do
  61. @default_facts.merge({
  62. :osfamily => 'Debian',
  63. :operatingsystem => 'Ubuntu',
  64. :os_package_type => 'debian'
  65. })
  66. end
  67. it { is_expected.to contain_package('nova-vncproxy').with(
  68. :name => "nova-consoleproxy",
  69. :ensure => 'present'
  70. )}
  71. it { is_expected.to contain_service('nova-vncproxy').with(
  72. :name => 'nova-novncproxy',
  73. :hasstatus => true,
  74. :ensure => 'running'
  75. )}
  76. end
  77. describe 'on Redhatish platforms' do
  78. let :facts do
  79. @default_facts.merge({ :osfamily => 'Redhat' })
  80. end
  81. it { is_expected.to compile.with_all_deps }
  82. end
  83. describe 'Support IPv6' do
  84. let(:facts) { @default_facts.merge({ :osfamily => 'Debian'}) }
  85. let(:params) { { :host => '2001::1' } }
  86. it { is_expected.to contain_nova_config('vnc/novncproxy_base_url').with(:value => 'http://[2001::1]:6080/vnc_auto.html') }
  87. end
  88. end