rspec-puppet 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +9 -1
- data/lib/rspec-puppet/example.rb +5 -0
- data/lib/rspec-puppet/example/host_example_group.rb +29 -0
- data/rspec-puppet.gemspec +7 -3
- data/spec/fixtures/manifests/site.pp +7 -0
- data/spec/fixtures/{boolean → modules/boolean}/manifests/init.pp +0 -0
- data/spec/fixtures/{sysctl → modules/sysctl}/manifests/init.pp +0 -0
- data/spec/hosts/foo_spec.rb +6 -0
- data/spec/hosts/testhost_spec.rb +5 -0
- data/spec/spec_helper.rb +2 -1
- metadata +10 -6
data/README.md
CHANGED
@@ -28,8 +28,12 @@ structure and naming convention.
|
|
28
28
|
| +-- <define_name>_spec.rb
|
29
29
|
|
|
30
30
|
+-- functions
|
31
|
+
| |
|
32
|
+
| +-- <function_name>_spec.rb
|
33
|
+
|
|
34
|
+
+-- hosts
|
31
35
|
|
|
32
|
-
+-- <
|
36
|
+
+-- <host_name>_spec.rb
|
33
37
|
|
34
38
|
## Example groups
|
35
39
|
|
@@ -49,6 +53,10 @@ end
|
|
49
53
|
describe 'myfunction', :type => :puppet_function do
|
50
54
|
...
|
51
55
|
end
|
56
|
+
|
57
|
+
describe 'myhost.example.com', :type => :host do
|
58
|
+
...
|
59
|
+
end
|
52
60
|
```
|
53
61
|
|
54
62
|
## Defined Types & Classes
|
data/lib/rspec-puppet/example.rb
CHANGED
@@ -2,6 +2,7 @@ require 'rspec-puppet/support'
|
|
2
2
|
require 'rspec-puppet/example/define_example_group'
|
3
3
|
require 'rspec-puppet/example/class_example_group'
|
4
4
|
require 'rspec-puppet/example/function_example_group'
|
5
|
+
require 'rspec-puppet/example/host_example_group'
|
5
6
|
|
6
7
|
RSpec::configure do |c|
|
7
8
|
def c.escaped_path(*parts)
|
@@ -19,4 +20,8 @@ RSpec::configure do |c|
|
|
19
20
|
c.include RSpec::Puppet::FunctionExampleGroup, :type => :puppet_function, :example_group => {
|
20
21
|
:file_path => c.escaped_path(%w[spec functions])
|
21
22
|
}
|
23
|
+
|
24
|
+
c.include RSpec::Puppet::HostExampleGroup, :type => :host, :example_group => {
|
25
|
+
:file_path => c.escaped_path(%w[spec hosts])
|
26
|
+
}
|
22
27
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module RSpec::Puppet
|
2
|
+
module HostExampleGroup
|
3
|
+
include RSpec::Puppet::ManifestMatchers
|
4
|
+
include RSpec::Puppet::Support
|
5
|
+
|
6
|
+
def subject
|
7
|
+
@catalogue ||= catalogue
|
8
|
+
end
|
9
|
+
|
10
|
+
def catalogue
|
11
|
+
Puppet[:modulepath] = self.respond_to?(:module_path) ? module_path : RSpec.configuration.module_path
|
12
|
+
Puppet[:manifestdir] = self.respond_to?(:manifest_dir) ? manifest_dir : RSpec.configuration.manifest_dir
|
13
|
+
Puppet[:manifest] = self.respond_to?(:manifest) ? manifest : RSpec.configuration.manifest
|
14
|
+
Puppet[:templatedir] = self.respond_to?(:template_dir) ? template_dir : RSpec.configuration.template_dir
|
15
|
+
Puppet[:code] = ""
|
16
|
+
|
17
|
+
nodename = self.class.top_level_description.downcase
|
18
|
+
|
19
|
+
facts_val = {
|
20
|
+
'hostname' => nodename.split('.').first,
|
21
|
+
'fqdn' => nodename,
|
22
|
+
'domain' => nodename.split('.').last,
|
23
|
+
}
|
24
|
+
facts_val.merge!(munge_facts(facts)) if self.respond_to?(:facts)
|
25
|
+
|
26
|
+
build_catalog(nodename, facts_val)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
data/rspec-puppet.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'rspec-puppet'
|
3
|
-
s.version = '0.1.
|
3
|
+
s.version = '0.1.2'
|
4
4
|
s.homepage = 'https://github.com/rodjek/rspec-puppet/'
|
5
5
|
s.summary = 'RSpec tests for your Puppet manifests'
|
6
6
|
s.description = 'RSpec tests for your Puppet manifests'
|
@@ -9,6 +9,7 @@ Gem::Specification.new do |s|
|
|
9
9
|
'lib/rspec-puppet/example/class_example_group.rb',
|
10
10
|
'lib/rspec-puppet/example/define_example_group.rb',
|
11
11
|
'lib/rspec-puppet/example/function_example_group.rb',
|
12
|
+
'lib/rspec-puppet/example/host_example_group.rb',
|
12
13
|
'lib/rspec-puppet/example.rb',
|
13
14
|
'lib/rspec-puppet/matchers/create_generic.rb',
|
14
15
|
'lib/rspec-puppet/matchers/create_resource.rb',
|
@@ -26,8 +27,11 @@ Gem::Specification.new do |s|
|
|
26
27
|
'spec/classes/sysctl_common_spec.rb',
|
27
28
|
'spec/defines/sysctl_before_spec.rb',
|
28
29
|
'spec/defines/sysctl_spec.rb',
|
29
|
-
'spec/
|
30
|
-
'spec/
|
30
|
+
'spec/hosts/foo_spec.rb',
|
31
|
+
'spec/hosts/testhost_spec.rb',
|
32
|
+
'spec/fixtures/manifests/site.pp',
|
33
|
+
'spec/fixtures/modules/boolean/manifests/init.pp',
|
34
|
+
'spec/fixtures/modules/sysctl/manifests/init.pp',
|
31
35
|
'spec/functions/split_spec.rb',
|
32
36
|
'spec/spec_helper.rb',
|
33
37
|
]
|
File without changes
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rspec-puppet'
|
2
2
|
|
3
3
|
RSpec.configure do |c|
|
4
|
-
c.module_path = File.join(File.dirname(File.expand_path(__FILE__)), 'fixtures')
|
4
|
+
c.module_path = File.join(File.dirname(File.expand_path(__FILE__)), 'fixtures', 'modules')
|
5
|
+
c.manifest_dir = File.join(File.dirname(File.expand_path(__FILE__)), 'fixtures', 'manifests')
|
5
6
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 31
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 2
|
10
|
+
version: 0.1.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Tim Sharpe
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-
|
18
|
+
date: 2012-02-15 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: rspec
|
@@ -43,6 +43,7 @@ files:
|
|
43
43
|
- lib/rspec-puppet/example/class_example_group.rb
|
44
44
|
- lib/rspec-puppet/example/define_example_group.rb
|
45
45
|
- lib/rspec-puppet/example/function_example_group.rb
|
46
|
+
- lib/rspec-puppet/example/host_example_group.rb
|
46
47
|
- lib/rspec-puppet/example.rb
|
47
48
|
- lib/rspec-puppet/matchers/create_generic.rb
|
48
49
|
- lib/rspec-puppet/matchers/create_resource.rb
|
@@ -60,8 +61,11 @@ files:
|
|
60
61
|
- spec/classes/sysctl_common_spec.rb
|
61
62
|
- spec/defines/sysctl_before_spec.rb
|
62
63
|
- spec/defines/sysctl_spec.rb
|
63
|
-
- spec/
|
64
|
-
- spec/
|
64
|
+
- spec/hosts/foo_spec.rb
|
65
|
+
- spec/hosts/testhost_spec.rb
|
66
|
+
- spec/fixtures/manifests/site.pp
|
67
|
+
- spec/fixtures/modules/boolean/manifests/init.pp
|
68
|
+
- spec/fixtures/modules/sysctl/manifests/init.pp
|
65
69
|
- spec/functions/split_spec.rb
|
66
70
|
- spec/spec_helper.rb
|
67
71
|
homepage: https://github.com/rodjek/rspec-puppet/
|