Skip to content

Commit a311c5d

Browse files
committed
add acceptance tests for native Debian packages
1 parent e2d3bbe commit a311c5d

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

spec/acceptance/class_spec.rb

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,3 +79,55 @@
7979
end
8080
end
8181
end
82+
83+
# Must uninstall the default nodesource repo and packages which come from there before attempting
84+
# to install native packages.
85+
context 'uninstall' do
86+
let(:pp) do
87+
"
88+
class { 'nodejs':
89+
nodejs_debug_package_ensure => absent,
90+
nodejs_dev_package_ensure => absent,
91+
nodejs_package_ensure => absent,
92+
npm_package_ensure => absent,
93+
repo_ensure => absent,
94+
}
95+
"
96+
end
97+
98+
it_behaves_like 'an idempotent resource'
99+
end
100+
101+
context 'native Debian packages' do
102+
let(:pp) do
103+
"
104+
class { 'nodejs':
105+
manage_package_repo => false,
106+
nodejs_dev_package_ensure => present,
107+
npm_package_ensure => present,
108+
}
109+
"
110+
end
111+
112+
it_behaves_like 'an idempotent resource'
113+
114+
if fact('os.family') == 'Debian'
115+
if %w[9 16.04 18.04].include? fact('os.release.major')
116+
describe package('nodejs-dev') do
117+
it { is_expected.to be_installed }
118+
end
119+
if %w[16.04 18.04].include? fact('os.release.major')
120+
describe package('npm') do
121+
it { is_expected.to be_installed }
122+
end
123+
end
124+
else
125+
describe package('libnode-dev') do
126+
it { is_expected.to be_installed }
127+
end
128+
describe package('npm') do
129+
it { is_expected.to be_installed }
130+
end
131+
end
132+
end
133+
end

0 commit comments

Comments
 (0)