weblogic_spec.rb 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. require 'spec_helper'
  2. describe 'fmw_bsu::weblogic', :type => :class do
  3. describe 'unix' do
  4. let :pre_condition do
  5. " class { 'fmw_jdk::install':
  6. java_home_dir => '/usr/java/jdk1.7.0_75',
  7. source_file => '/software/jdk-7u75-linux-x64.tar.gz',
  8. }
  9. class { 'fmw_wls':
  10. version => '10.3.6',
  11. middleware_home_dir => '/opt/oracle/middleware_1036'
  12. }
  13. class { 'fmw_wls::install':
  14. java_home_dir => '/usr/java/jdk1.7.0_75',
  15. source_file => '/software/wls1036_generic.jar',
  16. }
  17. "
  18. end
  19. describe 'When all attributes are default, on an unspecified platform' do
  20. it do
  21. expect { should contain_package('xxx')
  22. }.to raise_error(Puppet::Error, /Not supported Operation System, please use it on windows, linux or solaris host/)
  23. end
  24. end
  25. describe 'With attributes, on an unspecified platform' do
  26. let(:params){{
  27. version: '10.3.6',
  28. middleware_home_dir: '/opt/oracle/middleware_1036',
  29. patch_id: 'YUIS',
  30. source_file: '/software/p20181997_1036_Generic.zip',
  31. }}
  32. it do
  33. expect { should contain_package('xxx')
  34. }.to raise_error(Puppet::Error, /Not supported Operation System, please use it on windows, linux or solaris host/)
  35. end
  36. end
  37. describe 'With default attributes, wrong version, on CentOS platform' do
  38. let(:facts) {{ operatingsystem: 'CentOS',
  39. kernel: 'Linux',
  40. osfamily: 'RedHat',
  41. operatingsystemmajrelease: '6' }}
  42. let(:params){{
  43. middleware_home_dir: '/opt/oracle/middleware_1036',
  44. patch_id: 'YUIS',
  45. source_file: '/software/p20181997_1036_Generic.zip',
  46. }}
  47. it do
  48. expect { should contain_package('xxx')
  49. }.to raise_error(Puppet::Error, /Not supported WebLogic version, please use it on WebLogic 10.3.6 or 12.1.1/)
  50. end
  51. end
  52. describe 'With default attributes missing patchid, on CentOS platform' do
  53. let(:facts) {{ operatingsystem: 'CentOS',
  54. kernel: 'Linux',
  55. osfamily: 'RedHat',
  56. operatingsystemmajrelease: '6' }}
  57. let(:params){{
  58. version: '10.3.6',
  59. middleware_home_dir: '/opt/oracle/middleware_1036',
  60. source_file: '/software/p20181997_1036_Generic.zip',
  61. }}
  62. it do
  63. expect { should contain_package('xxx')
  64. }.to raise_error(Puppet::Error, /patch_id parameter cannot be empty/)
  65. end
  66. end
  67. describe 'With default attributes missing source file, on CentOS platform' do
  68. let(:facts) {{ operatingsystem: 'CentOS',
  69. kernel: 'Linux',
  70. osfamily: 'RedHat',
  71. operatingsystemmajrelease: '6' }}
  72. let(:params){{
  73. version: '10.3.6',
  74. middleware_home_dir: '/opt/oracle/middleware_1036',
  75. patch_id: 'YUIS',
  76. }}
  77. it do
  78. expect { should contain_package('xxx')
  79. }.to raise_error(Puppet::Error, /source_file parameter cannot be empty/)
  80. end
  81. end
  82. describe 'With attributes 10.3.6, on CentOS platform' do
  83. let(:facts) {{ operatingsystem: 'CentOS',
  84. kernel: 'Linux',
  85. osfamily: 'RedHat',
  86. operatingsystemmajrelease: '6' }}
  87. let(:params){{
  88. version: '10.3.6',
  89. middleware_home_dir: '/opt/oracle/middleware_1036',
  90. patch_id: 'YUIS',
  91. source_file: '/software/p20181997_1036_Generic.zip',
  92. }}
  93. it { should contain_class('fmw_bsu::internal::bsu').with(
  94. version: '10.3.6',
  95. middleware_home_dir: '/opt/oracle/middleware_1036',
  96. patch_id: 'YUIS',
  97. source_file: '/software/p20181997_1036_Generic.zip',
  98. os_user: 'oracle',
  99. os_group: 'oinstall',
  100. tmp_dir: '/tmp',
  101. )
  102. }
  103. end
  104. end
  105. describe 'windows' do
  106. let :pre_condition do
  107. " class { 'fmw_jdk::install':
  108. java_home_dir => 'C:/java/jdk1.7.0_75',
  109. source_file => 'C:/software/jdk-7u75-linux-x64.exe',
  110. }
  111. class { 'fmw_wls':
  112. version => '10.3.6',
  113. middleware_home_dir => 'C:/oracle/middleware_1036'
  114. }
  115. class { 'fmw_wls::install':
  116. java_home_dir => 'C:/java/jdk1.7.0_75',
  117. source_file => 'C:/software/wls1036_generic.jar',
  118. }
  119. "
  120. end
  121. describe 'With attributes 10.3.6, on CentOS platform' do
  122. let(:facts) {{ operatingsystem: 'windows',
  123. kernel: 'windows',
  124. osfamily: 'windows'}}
  125. let(:params){{
  126. version: '10.3.6',
  127. middleware_home_dir: 'C:/oracle/middleware_1036',
  128. patch_id: 'YUIS',
  129. source_file: 'C:/software/p20181997_1036_Generic.zip',
  130. }}
  131. it { should contain_class('fmw_bsu::internal::bsu_windows').with(
  132. version: '10.3.6',
  133. middleware_home_dir: 'C:/oracle/middleware_1036',
  134. patch_id: 'YUIS',
  135. source_file: 'C:/software/p20181997_1036_Generic.zip',
  136. )
  137. }
  138. end
  139. end
  140. end