serverspec 0.4.13 → 0.4.14
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/serverspec/commands/base.rb +6 -0
- data/lib/serverspec/version.rb +1 -1
- data/spec/darwin/matchers_spec.rb +2 -0
- data/spec/darwin/package_spec.rb +2 -0
- data/spec/debian/matchers_spec.rb +2 -0
- data/spec/debian/package_spec.rb +2 -0
- data/spec/gentoo/matchers_spec.rb +2 -0
- data/spec/gentoo/package_spec.rb +2 -0
- data/spec/redhat/matchers_spec.rb +2 -0
- data/spec/redhat/package_spec.rb +2 -0
- data/spec/solaris/matchers_spec.rb +2 -0
- data/spec/solaris/package_spec.rb +2 -0
- data/spec/support/shared_commands_examples.rb +10 -0
- data/spec/support/shared_matcher_examples.rb +24 -0
- data/spec/support/shared_package_examples.rb +24 -0
- metadata +1 -1
@@ -128,6 +128,12 @@ module Serverspec
|
|
128
128
|
cmd
|
129
129
|
end
|
130
130
|
|
131
|
+
def check_installed_by_npm name, version=nil
|
132
|
+
cmd = "npm ls #{escape(name)} -g"
|
133
|
+
cmd = "#{cmd} | grep -w -- #{escape(version)}" unless version.nil?
|
134
|
+
cmd
|
135
|
+
end
|
136
|
+
|
131
137
|
def check_belonging_group user, group
|
132
138
|
"id #{escape(user)} | awk '{print $3}' | grep -- #{escape(group)}"
|
133
139
|
end
|
data/lib/serverspec/version.rb
CHANGED
@@ -43,6 +43,8 @@ describe 'Serverspec matchers of Darwin' do
|
|
43
43
|
|
44
44
|
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
45
45
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
46
|
+
it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
|
47
|
+
it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
|
46
48
|
|
47
49
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
48
50
|
it_behaves_like 'support have_gid matcher', 'root', 0
|
data/spec/darwin/package_spec.rb
CHANGED
@@ -5,4 +5,6 @@ include Serverspec::Helper::Darwin
|
|
5
5
|
describe 'Serverspec package matchers of Darwin family' do
|
6
6
|
it_behaves_like 'support package installed by gem matcher', 'jekyll'
|
7
7
|
it_behaves_like 'support package installed by gem with version matcher', 'jekyll', '1.1.1'
|
8
|
+
it_behaves_like 'support package installed by npm matcher', 'bower'
|
9
|
+
it_behaves_like 'support package installed by npm with version matcher', 'bower', '0.9.2'
|
8
10
|
end
|
@@ -43,6 +43,8 @@ describe 'Serverspec matchers of Debian family' do
|
|
43
43
|
|
44
44
|
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
45
45
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
46
|
+
it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
|
47
|
+
it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
|
46
48
|
|
47
49
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
48
50
|
it_behaves_like 'support have_gid matcher', 'root', 0
|
data/spec/debian/package_spec.rb
CHANGED
@@ -6,4 +6,6 @@ describe 'Serverspec package matchers of Debian family' do
|
|
6
6
|
it_behaves_like 'support package installed matcher', 'httpd'
|
7
7
|
it_behaves_like 'support package installed by gem matcher', 'jekyll'
|
8
8
|
it_behaves_like 'support package installed by gem with version matcher', 'jekyll', '1.1.1'
|
9
|
+
it_behaves_like 'support package installed by npm matcher', 'bower'
|
10
|
+
it_behaves_like 'support package installed by npm with version matcher', 'bower', '0.9.2'
|
9
11
|
end
|
@@ -44,6 +44,8 @@ describe 'Serverspec matchers of Gentoo family' do
|
|
44
44
|
|
45
45
|
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
46
46
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
47
|
+
it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
|
48
|
+
it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
|
47
49
|
|
48
50
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
49
51
|
it_behaves_like 'support have_gid matcher', 'root', 0
|
data/spec/gentoo/package_spec.rb
CHANGED
@@ -6,4 +6,6 @@ describe 'Serverspec package matchers of Gentoo family' do
|
|
6
6
|
it_behaves_like 'support package installed matcher', 'httpd'
|
7
7
|
it_behaves_like 'support package installed by gem matcher', 'jekyll'
|
8
8
|
it_behaves_like 'support package installed by gem with version matcher', 'jekyll', '1.1.1'
|
9
|
+
it_behaves_like 'support package installed by npm matcher', 'bower'
|
10
|
+
it_behaves_like 'support package installed by npm with version matcher', 'bower', '0.9.2'
|
9
11
|
end
|
@@ -45,6 +45,8 @@ describe 'Serverspec matchers of Red Hat family' do
|
|
45
45
|
|
46
46
|
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
47
47
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
48
|
+
it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
|
49
|
+
it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
|
48
50
|
|
49
51
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
50
52
|
it_behaves_like 'support have_gid matcher', 'root', 0
|
data/spec/redhat/package_spec.rb
CHANGED
@@ -6,4 +6,6 @@ describe 'Serverspec package matchers of Red Hat family' do
|
|
6
6
|
it_behaves_like 'support package installed matcher', 'httpd'
|
7
7
|
it_behaves_like 'support package installed by gem matcher', 'jekyll'
|
8
8
|
it_behaves_like 'support package installed by gem with version matcher', 'jekyll', '1.1.1'
|
9
|
+
it_behaves_like 'support package installed by npm matcher', 'bower'
|
10
|
+
it_behaves_like 'support package installed by npm with version matcher', 'bower', '0.9.2'
|
9
11
|
end
|
@@ -44,6 +44,8 @@ describe 'Serverspec matchers of Solaris family' do
|
|
44
44
|
|
45
45
|
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
46
46
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
47
|
+
it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
|
48
|
+
it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
|
47
49
|
|
48
50
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
49
51
|
it_behaves_like 'support have_gid matcher', 'root', 0
|
@@ -6,4 +6,6 @@ describe 'Serverspec package matchers of Solaris family' do
|
|
6
6
|
it_behaves_like 'support package installed matcher', 'httpd'
|
7
7
|
it_behaves_like 'support package installed by gem matcher', 'jekyll'
|
8
8
|
it_behaves_like 'support package installed by gem with version matcher', 'jekyll', '1.1.1'
|
9
|
+
it_behaves_like 'support package installed by npm matcher', 'bower'
|
10
|
+
it_behaves_like 'support package installed by npm with version matcher', 'bower', '0.9.2'
|
9
11
|
end
|
@@ -8,6 +8,16 @@ shared_examples_for 'support command check_installed_by_gem with_version' do |pa
|
|
8
8
|
it { should eq "gem list --local | grep -w -- ^#{package} | grep -w -- ^#{version}" }
|
9
9
|
end
|
10
10
|
|
11
|
+
shared_examples_for 'support command check_installed_by_npm' do |package|
|
12
|
+
subject { commands.check_installed_by_npm(package) }
|
13
|
+
it { should eq "npm ls #{package} -g" }
|
14
|
+
end
|
15
|
+
|
16
|
+
shared_examples_for 'support command check_installed_by_npm with_version' do |package, version|
|
17
|
+
subject { commands.check_installed_by_npm(package) }
|
18
|
+
it { should eq "npm ls #{package} -g | grep -w -- #{version}" }
|
19
|
+
end
|
20
|
+
|
11
21
|
shared_examples_for 'support command check_file' do |file|
|
12
22
|
subject { commands.check_file(file) }
|
13
23
|
it { should eq "test -f #{file}" }
|
@@ -653,6 +653,30 @@ shared_examples_for 'support be_installed.by(gem).with_version matcher' do |name
|
|
653
653
|
end
|
654
654
|
end
|
655
655
|
|
656
|
+
shared_examples_for 'support be_installed.by(npm) matcher' do |name|
|
657
|
+
describe 'be_installed.by(npm)' do
|
658
|
+
describe name do
|
659
|
+
it { should be_installed.by('npm') }
|
660
|
+
end
|
661
|
+
|
662
|
+
describe 'invalid-npm' do
|
663
|
+
it { should_not be_installed.by('npm') }
|
664
|
+
end
|
665
|
+
end
|
666
|
+
end
|
667
|
+
|
668
|
+
shared_examples_for 'support be_installed.by(npm).with_version matcher' do |name, version|
|
669
|
+
describe 'be_installed.by(npm).with_version' do
|
670
|
+
describe name do
|
671
|
+
it { should be_installed.by('npm').with_version(version) }
|
672
|
+
end
|
673
|
+
|
674
|
+
describe name do
|
675
|
+
it { should_not be_installed.by('npm').with_version('invalid-version') }
|
676
|
+
end
|
677
|
+
end
|
678
|
+
end
|
679
|
+
|
656
680
|
shared_examples_for 'support belong_to_group matcher' do |user, group|
|
657
681
|
describe 'belong_to_group' do
|
658
682
|
describe user do
|
@@ -33,3 +33,27 @@ shared_examples_for 'support package installed by gem with version matcher' do |
|
|
33
33
|
end
|
34
34
|
end
|
35
35
|
end
|
36
|
+
|
37
|
+
shared_examples_for 'support package installed by npm matcher' do |name|
|
38
|
+
describe 'installed by npm' do
|
39
|
+
describe package(name) do
|
40
|
+
it { should be_installed.by('npm') }
|
41
|
+
end
|
42
|
+
|
43
|
+
describe 'invalid-npm' do
|
44
|
+
it { should_not be_installed.by('npm') }
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
shared_examples_for 'support package installed by npm with version matcher' do |name, version|
|
50
|
+
describe 'installed by npm with version' do
|
51
|
+
describe package(name) do
|
52
|
+
it { should be_installed.by('npm').with_version(version) }
|
53
|
+
end
|
54
|
+
|
55
|
+
describe package(name) do
|
56
|
+
it { should_not be_installed.by('npm').with_version('invalid-version') }
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|