aboutsummaryrefslogtreecommitdiff
path: root/spec/classes/samba__server__service_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/classes/samba__server__service_spec.rb')
-rw-r--r--spec/classes/samba__server__service_spec.rb54
1 files changed, 54 insertions, 0 deletions
diff --git a/spec/classes/samba__server__service_spec.rb b/spec/classes/samba__server__service_spec.rb
new file mode 100644
index 0000000..4352ec2
--- /dev/null
+++ b/spec/classes/samba__server__service_spec.rb
@@ -0,0 +1,54 @@
+require 'spec_helper'
+
+describe 'samba::server::service' do
+ context 'on a Debian os family' do
+ let(:facts) {{ :osfamily => 'Debian' }}
+
+ it { should contain_service('samba').with_require('Class[Samba::Server::Config]') }
+
+ context 'Debian' do
+ context 'wheezy' do
+ let(:facts) {{ :osfamily => 'Debian',
+ :operatingsystem => 'Debian',
+ :operatingsystemmajrelease => '7' }}
+ it { should contain_service('samba') }
+ end
+ context 'jessie' do
+ let(:facts) {{ :osfamily => 'Debian',
+ :operatingsystem => 'Debian',
+ :operatingsystemmajrelease => '8' }}
+ it { should contain_service('smbd') }
+ end
+ end
+
+ context 'Ubuntu' do
+ let(:facts) {{ :osfamily => 'Debian', :operatingsystem => 'Ubuntu' }}
+ it { should contain_service('smbd') }
+ end
+ end
+
+ context 'on a Redhat os family' do
+ let(:facts) {{ :osfamily => 'Redhat' }}
+ it { should contain_service('smb') }
+ end
+
+ context 'on a Archlinux os family' do
+ let(:facts) {{ :osfamily => 'Archlinux' }}
+ it { should contain_service('smbd') }
+ end
+
+ context 'on Linux os family' do
+ let(:facts) {{ :osfamily => 'Linux' }}
+ it { should raise_error(/is not supported by this module./) }
+
+ context 'Gentoo' do
+ let(:facts) {{ :osfamily => 'Linux', :operatingsystem => 'Gentoo' }}
+ it { should contain_service('samba') }
+ end
+ end
+
+ context 'on an unsupported OS' do
+ let(:facts) {{ :osfamily => 'Solaris' }}
+ it { should raise_error(/Solaris is not supported by this module./) }
+ end
+end