fizzgig 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
1
  Gemfile.lock
2
2
 
3
3
  .ruby-version
4
+ fizzgig-0.1.0.gem
@@ -0,0 +1,11 @@
1
+ # 0.1.1
2
+
3
+ * fixed bug to allow multiple conditions on a matcher, eg:
4
+ ```ruby
5
+ it {should contain_file('foo').with_content(/asdf/).with_content(/jkl;/)}
6
+ ```
7
+
8
+
9
+ # 0.1.0
10
+
11
+ * Initial release
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ Copyright (c) 2013 Philip Potter
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a
4
+ copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included
12
+ in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
+
@@ -0,0 +1,151 @@
1
+ Fizzgig
2
+ -------
3
+
4
+ Fizzgig is a library to help write fast unit tests.
5
+
6
+ [source,ruby]
7
+ -------------------------------------------
8
+ describe 'ganglia::cronjob' do
9
+ include Fizzgig::CatalogMatchers
10
+
11
+ it 'should create ganglia script and cron job' do
12
+ catalog = Fizzgig.instantiate <<END
13
+ ganglia::cronjob {'tiger':
14
+ content => 'tiger content',
15
+ }
16
+ END
17
+ catalog.should contain_file('/etc/ganglia/scripts/tiger')
18
+ .with_content('tiger content')
19
+ .with_mode('0755')
20
+
21
+ catalog.should contain_cron('ganglia-tiger')
22
+ .with_command('/etc/ganglia/scripts/tiger')
23
+ .with_minute('*')
24
+ .with_user('root')
25
+ end
26
+ end
27
+ -------------------------------------------
28
+
29
+ Basic Functionality
30
+ ~~~~~~~~~~~~~~~~~~~
31
+
32
+ Fizzgig is based around two functions: +instantiate+ and +include+,
33
+ which will instantiate a defined type and include a class
34
+ respectively:
35
+
36
+ [source,ruby]
37
+ catalog = Fizzgig.instantiate %q[ nginx::site {'foo.com': max_age => 300 } ]
38
+
39
+ [source,ruby]
40
+ catalog = Fizzgig.include 'nginx'
41
+
42
+ Each of these functions returns a Puppet::Resource::Catalog
43
+ object. You can use the matchers in Fizzgig::CatalogMatchers to make
44
+ assertions against the contents of this catalog:
45
+
46
+ [source,ruby]
47
+ catalog.should contain_file('/etc/nginx.conf').with_content(/ssl/)
48
+
49
+ Just like in rspec-puppet, you can assert the existence of defined
50
+ types within your own modules by replacing +::+ with +__+ in the name:
51
+
52
+ [source,ruby]
53
+ catalog.should contain_nginx__site('foo.com')
54
+
55
+ Stubbing facts
56
+ ~~~~~~~~~~~~~~
57
+
58
+ Facts can be stubbed by passing a hash of fact values to instantiate
59
+ or include:
60
+
61
+ [source,ruby]
62
+ Fizzgig.include('nginx',:facts => {'lsbdistcodename' => 'precise'})
63
+
64
+ Stubbing functions
65
+ ~~~~~~~~~~~~~~~~~~
66
+
67
+ Custom functions can also be stubbed. This is very handy for stubbing
68
+ out extdata or hieradata in tests:
69
+
70
+ [source,ruby]
71
+ -------------
72
+ Fizzgig.include('nginx',:stubs => {:extlookup => {'site_root' => 'www.foo.com'}})
73
+ .should contain_file('/etc/nginx/sites-enabled/www.foo.com')
74
+ -------------
75
+
76
+ Rationale
77
+ ~~~~~~~~~
78
+
79
+ Fizzgig is designed to be fast, and to test individual units of code,
80
+ as good unit tests do. However, existing puppet testing libraries such
81
+ as https://github.com/rodjek/rspec-puppet[rspec-puppet] will compute a
82
+ complete catalog, expanding out all classes and defined types until it
83
+ reaches the individual base puppet types. This means that it can spend
84
+ time computing resources which are wholly unrelated to the test you're
85
+ writing.
86
+
87
+ Fizzgig, by contrast, treats defined types as black box abstractions:
88
+ it only adds the defined types you declare within the class or define
89
+ under test to the catalog. Types which are pulled in transitively by
90
+ other types will not be added to the catalog.
91
+
92
+ Defined types
93
+ ~~~~~~~~~~~~~
94
+
95
+ To achieve its isolation, fizzgig does not transitively evaluate
96
+ defined types. Suppose I have these puppet defines:
97
+
98
+ [source,puppet]
99
+ ---------------
100
+ define nginx::ssl_site () {
101
+ nginx::site {$title:
102
+ }
103
+ nginx::ssl_cert {$title:
104
+ }
105
+ }
106
+
107
+ define nginx::site () {
108
+ file {"/etc/nginx/sites-enabled/$title":
109
+ # ...
110
+ }
111
+ }
112
+ ---------------
113
+
114
+ And I write this test:
115
+
116
+ [source,ruby]
117
+ -------------
118
+ catalog Fizzgig.instantiate %q[ nginx::ssl_site{'foo': } ]
119
+ catalog.should contain_nginx__site('foo') # ok, will pass
120
+ catalog.should contain_file('/etc/nginx/sites-enabled/foo') # ERROR, will fail
121
+ -------------
122
+
123
+ Because the file resource is not directly referenced by
124
+ +nginx::ssl_site+ but only transitively by +nginx::site+, Fizzgig will
125
+ not add it to the catalog. This means that Fizzgig will only test the
126
+ direct effects of the type under test, not of its collaborators.
127
+
128
+
129
+ WARNING: Fizzgig makes use of non-public methods in the puppet
130
+ codebase to enable it to perform this isolation. This means that even
131
+ a patch release of puppet may, in principle, cause fizzgig to
132
+ break. Fizzgig is not currently supported in any way by
133
+ puppetlabs. Use at your own risk.
134
+
135
+ Installation
136
+ ~~~~~~~~~~~~
137
+
138
+ Add the following to your Gemfile:
139
+
140
+ [source,ruby]
141
+ gem "fizzgig"
142
+
143
+ Or just run:
144
+
145
+ [source]
146
+ gem install fizzgig
147
+
148
+ Licence
149
+ ~~~~~~~
150
+
151
+ MIT. See LICENSE for details.
data/TODO.org CHANGED
@@ -31,7 +31,19 @@ from rspec-puppet?
31
31
  node_obj = Puppet::Node.new(nodename) # default to Puppet[:certname]?
32
32
  node_obj.merge(facts_val) # but what is this?
33
33
 
34
- ** TODO Document it!
34
+ ** DONE Release it!
35
+ ** DONE Fix bug where multiple with_foo() conditions would be overridden by the last
36
+ =should contain_file('foo').with_content(/bar/).with_content(/baz/)=
37
+ would not check =/bar/=, only =/baz/=, for example
38
+ ** DONE Document it!
39
+ - [X] gem install or gemfile line
40
+ ** DONE Issue with global Puppet settings config & running rspec-puppet simultaneously with puppet...
41
+ See the fizzgig branch of puppet for an example
42
+
43
+ Can we isolate the compiler from the settings?
44
+
45
+ Answer seems to be yes -- use puppetlabs_spec_helper or directly
46
+ Puppet::Test::TestHelper to tear down Puppet.settings after each test.
35
47
  ** TODO Ensure that modulepath can take multiple directories
36
48
  - in govuk/puppet, we had trouble having multiple directories on
37
49
  the module path, so we ended up doing this:
@@ -56,8 +68,7 @@ node_obj.merge(facts_val) # but what is this?
56
68
 
57
69
  That's not so cool :(
58
70
 
59
- ** TODO Rename
60
- ** TODO Release it!
71
+ ** DONE Rename
61
72
  ** TODO implementation-independent dependency assertions
62
73
  ** TODO Test standalone puppet modules
63
74
  ** TODO better test output for files with large content
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'fizzgig'
3
- s.version = '0.1.0'
3
+ s.version = '0.1.1'
4
4
  s.homepage = 'https://github.com/philandstuff/fizzgig'
5
5
  s.summary = 'Tools for writing fast unit tests for Puppet'
6
6
  s.description = 'Tools for writing fast unit tests for Puppet'
@@ -48,10 +48,10 @@ module Fizzgig
48
48
  end
49
49
 
50
50
  def self.setup_puppet
51
- Puppet[:manifestdir] = ''
51
+ Puppet[:code] = ' ' # hack to suppress puppet from looking at Puppet[:manifest]
52
52
  Puppet[:modulepath] = RSpec.configuration.modulepath
53
53
  # stop template() fn from complaining about missing vardir config
54
- Puppet[:templatedir] = ""
54
+ Puppet[:vardir] ||= ""
55
55
  end
56
56
  end
57
57
 
@@ -15,11 +15,13 @@ module Fizzgig
15
15
  @catalog = catalog
16
16
  resource = catalog.resource(@referenced_type,@expected_title)
17
17
  if resource then
18
- (@expected_params || {}).all? do |name,expected_val|
19
- if expected_val.kind_of?(Regexp)
20
- resource[name] =~ expected_val
21
- else
22
- resource[name] == expected_val
18
+ (@expected_params || {}).all? do |name,expected_vals|
19
+ expected_vals.all? do |expected_val|
20
+ if expected_val.kind_of?(Regexp)
21
+ resource[name] =~ expected_val
22
+ else
23
+ resource[name] == expected_val
24
+ end
23
25
  end
24
26
  end
25
27
  else
@@ -28,20 +30,19 @@ module Fizzgig
28
30
  end
29
31
 
30
32
  def failure_message_for_should
31
- param_string = ""
32
- if @expected_params
33
- param_string = " with parameters #{@expected_params.inspect}"
34
- end
35
- possible_resource = @catalog.resource(@referenced_type,@expected_title)
36
- actual = possible_resource ? possible_resource.inspect : "the catalog"
37
- "expected #{actual} to contain #{@referenced_type}[#{@expected_title}]#{param_string}"
33
+ "expected #{actual_string} to contain #{expected_string}"
34
+ end
35
+
36
+ def failure_message_for_should_not
37
+ "expected #{actual_string} not to contain #{expected_string}"
38
38
  end
39
39
 
40
40
  def method_missing(method, *args, &block)
41
41
  if method.to_s =~ /^with_/
42
42
  param = method.to_s.gsub(/^with_/,'')
43
43
  @expected_params ||= {}
44
- @expected_params[param] = args[0]
44
+ @expected_params[param] ||= []
45
+ @expected_params[param] << args[0]
45
46
  self
46
47
  else
47
48
  super
@@ -50,6 +51,19 @@ module Fizzgig
50
51
 
51
52
  private
52
53
 
54
+ def actual_string
55
+ possible_resource = @catalog.resource(@referenced_type,@expected_title)
56
+ possible_resource ? possible_resource.inspect : "the catalog"
57
+ end
58
+
59
+ def expected_string
60
+ param_string = ""
61
+ if @expected_params
62
+ param_string = " with parameters #{@expected_params.inspect}"
63
+ end
64
+ "#{@referenced_type}[#{@expected_title}]#{param_string}"
65
+ end
66
+
53
67
  def referenced_type(type)
54
68
  type.split('__').map { |r| r.capitalize }.join('::')
55
69
  end
@@ -2,110 +2,113 @@ require 'spec_helper'
2
2
  require 'fizzgig'
3
3
 
4
4
  describe Fizzgig do
5
- context 'when instantiating defined types' do
6
- it 'should test existence of file with parameters' do
7
- instance_code = %q[nginx::site {'foo': content => 'dontcare'}]
8
- instance = Fizzgig.instantiate(instance_code)
9
- instance.should contain_file('/etc/nginx/sites-enabled/foo').
10
- with_ensure('present').
11
- with_mode('0440')
12
- end
5
+ describe '#include' do
6
+ subject { Fizzgig.include(classname, :stubs => stubs, :facts => facts) }
7
+ let(:stubs) { {} }
8
+ let(:facts) { {} }
13
9
 
14
- it 'should test resources other than files' do
15
- instance_code = %q[nginx::site {'foo': content => 'dontcare'}]
16
- instance = Fizzgig.instantiate(instance_code)
17
- instance.should contain_user('www-data')
18
- end
10
+ describe 'webapp' do
11
+ let(:classname) {'webapp'}
19
12
 
20
- it 'should test presence of namespaced type' do
21
- instance_code = %q[nginx::simple_server {'foo':}]
22
- instance = Fizzgig.instantiate(instance_code)
23
- instance.should contain_nginx__site('foo')
13
+ it { should contain_nginx__site('webapp') }
24
14
  end
25
15
 
26
- it 'should test content from a template' do
27
- instance_code = %q[nginx::simple_server {'foo':}]
28
- instance = Fizzgig.instantiate(instance_code)
29
- instance.should contain_nginx__site('foo').
30
- with_content(/server_name foo;/)
31
- end
32
- end
33
-
34
- it 'should test classes' do
35
- catalog = Fizzgig.include 'webapp'
36
- catalog.should contain_nginx__site('webapp')
37
- end
16
+ describe 'functions::class_test' do
17
+ let(:classname) {'functions::class_test'}
18
+ context 'with extlookup stubbed out' do
19
+ let(:stubs) { {:extlookup => {'ssh-key-barry' => 'the key of S'}} }
20
+ it { should contain_ssh_authorized_key('barry').with_key('the key of S') }
21
+ end
38
22
 
39
- context 'when stubbing function calls' do
40
- it 'should return the value given' do
41
- stubs = {:extlookup => {'ssh-key-barry' => 'the key of S'}}
42
- catalog = Fizzgig.include('functions::class_test', :stubs => stubs)
43
- catalog.should contain_ssh_authorized_key('barry').with_key('the key of S')
23
+ context 'with extlookup stubbed with wrong key' do
24
+ let(:stubs) { {:extlookup => {'bananas' => 'potassium'}} }
25
+ it 'should throw an exception' do
26
+ expect { subject }.to raise_error Puppet::Error
27
+ end
28
+ end
44
29
  end
45
30
 
46
- it 'should return the value given when instantiating a defined type' do
47
- stubs = {:extlookup => {'ssh-key-barry' => 'the key of S'}}
48
- catalog = Fizzgig.instantiate(%[functions::define_test{'foo': }], :stubs => stubs)
49
- catalog.should contain_ssh_authorized_key('barry').with_key('the key of S')
31
+ describe 'functions::recursive_extlookup_test' do
32
+ let(:classname) {'functions::recursive_extlookup_test'}
33
+ let(:stubs) {
34
+ {:extlookup =>
35
+ { 'ssh-key-barry' => 'rsa-key-barry',
36
+ 'rsa-key-barry' => 'the key of S'}}
37
+ }
38
+ it { should contain_ssh_authorized_key('barry').with_key('the key of S') }
50
39
  end
51
40
 
52
- context 'when stubbing data different to that provided' do
53
- it 'should throw an exception' do
54
- stubs = {:extlookup => {'bananas' => 'potassium'}}
55
- expect { catalog = Fizzgig.include('functions::class_test',:stubs=>stubs) }.
56
- to raise_error Puppet::Error
57
- end
41
+ describe 'facts::class_test' do
42
+ let(:classname) {'facts::class_test'}
43
+ let(:facts) {
44
+ { 'unqualified_fact' => 'F',
45
+ 'qualified_fact' => 'B+',
46
+ 'template_visible_fact' => 'wibble' }}
47
+ it { should contain_notify('unqualified-fact-test').with_message('F') }
48
+ it { should contain_notify('qualified-fact-test').with_message('B+') }
49
+ it { should contain_file('template-test').with_content(/instance_fact:wibble/) }
50
+ it { should contain_file('template-test').with_content(/accessor_fact:wibble/) }
51
+ it { should contain_file('template-test').with_content(/scope_lookup_fact:wibble/) }
58
52
  end
59
53
  end
60
54
 
61
- context 'when providing recursive stubs' do
62
- it 'should return the value given' do
63
- stubs = {:extlookup =>
64
- { 'ssh-key-barry' => 'rsa-key-barry',
65
- 'rsa-key-barry' => 'the key of S'}}
66
- Fizzgig.include('functions::recursive_extlookup_test', :stubs => stubs).
67
- should contain_ssh_authorized_key('barry').with_key('the key of S')
68
- end
69
- end
55
+ describe '#instantiate' do
56
+ subject { Fizzgig.instantiate(code, :stubs => stubs, :facts => facts) }
57
+ let(:stubs) { {} }
58
+ let(:facts) { {} }
70
59
 
71
- context 'when stubbing facts' do
72
- context 'while instantiating defined types' do
73
- it 'should lookup unqualified fact from stub' do
74
- catalog = Fizzgig.instantiate(%q[facts::define_test{'test':}], :facts => {'unqualified_fact' => 'hello world'})
75
- catalog.should contain_notify('unqualified-fact-test').with_message('hello world')
60
+ describe 'params' do
61
+ context 'when specifying one parameter' do
62
+ let(:code) { %q[params_test {'foo': param => 'bar'}] }
63
+ it { should contain_file('foo-param').with_source('bar') }
64
+ it { should contain_notify('foo-default').with_message('default_val') }
76
65
  end
77
-
78
- it 'should lookup qualified fact from stub' do
79
- catalog = Fizzgig.instantiate(%q[facts::define_test{'test':}], :facts => {'qualified_fact' => 'hello world'})
80
- catalog.should contain_notify('qualified-fact-test').with_message('hello world')
66
+ context 'when specifying both paramaters' do
67
+ let(:code) { %q[params_test {'foo': param => 'bar', param_with_default => 'baz'}] }
68
+ it { should contain_file('foo-param').with_source('bar') }
69
+ it { should contain_notify('foo-default').with_message('baz') }
81
70
  end
82
71
  end
83
72
 
84
- context 'while including classes' do
85
- it 'should lookup unqualified fact from stub' do
86
- catalog = Fizzgig.include('facts::class_test', :facts => {'unqualified_fact' => 'hello world'})
87
- catalog.should contain_notify('unqualified-fact-test').with_message('hello world')
88
- end
89
-
90
- it 'should lookup qualified fact from stub' do
91
- catalog = Fizzgig.include('facts::class_test', :facts => {'qualified_fact' => 'hello world'})
92
- catalog.should contain_notify('qualified-fact-test').with_message('hello world')
73
+ describe 'nginx::site' do
74
+ context 'basic functionality' do
75
+ let(:code) { %q[nginx::site {'foo': content => 'dontcare'}] }
76
+ it { should contain_file('/etc/nginx/sites-enabled/foo').
77
+ with_ensure('present').
78
+ with_mode('0440')
79
+ }
80
+ it { should_not contain_file('/etc/nginx/sites-enabled/foo').
81
+ with_ensure(/text not present/). # test that this doesn't get ignored
82
+ with_ensure(/present/)
83
+ }
84
+ it { should contain_user('www-data') }
93
85
  end
86
+ end
94
87
 
95
- it 'should lookup fact by instance variable from within template' do
96
- catalog = Fizzgig.include('facts::template_test', :facts => {'template_visible_fact' => 'hello world'})
97
- catalog.should contain_file('template-test').with_content(/instance_fact:hello world/)
88
+ describe 'nginx::simple_server' do
89
+ context 'basic functionality' do
90
+ let(:code) { %q[nginx::simple_server {'foo':}] }
91
+ it { should contain_nginx__site('foo').
92
+ with_content(/server_name foo;/)
93
+ }
98
94
  end
95
+ end
99
96
 
100
- it 'should lookup fact by accessor method from within template' do
101
- catalog = Fizzgig.include('facts::template_test', :facts => {'template_visible_fact' => 'hello world'})
102
- catalog.should contain_file('template-test').with_content(/accessor_fact:hello world/)
103
- end
97
+ context 'functions::define_test with function stubs' do
98
+ let(:stubs) { {:extlookup => {'ssh-key-barry' => 'the key of S'}} }
99
+ let(:code) { %[functions::define_test{'foo': }] }
100
+ it { should contain_ssh_authorized_key('barry').with_key('the key of S') }
101
+ end
104
102
 
105
- it 'should lookup fact by scope.lookupvar from within template' do
106
- catalog = Fizzgig.include('facts::template_test', :facts => {'template_visible_fact' => 'hello world'})
107
- catalog.should contain_file('template-test').with_content(/scope_lookup_fact:hello world/)
108
- end
103
+ describe 'facts::define_test' do
104
+ let(:classname) {'facts::define_test'}
105
+ let(:code) {%q[facts::define_test{'test':}]}
106
+ let(:facts) {
107
+ { 'unqualified_fact' => 'no qualifications',
108
+ 'qualified_fact' => 'cse ungraded in metalwork'}
109
+ }
110
+ it { should contain_notify('unqualified-fact-test').with_message('no qualifications') }
111
+ it { should contain_notify('qualified-fact-test').with_message('cse ungraded in metalwork') }
109
112
  end
110
113
  end
111
114
  end
@@ -5,4 +5,7 @@ class facts::class_test {
5
5
  'qualified-fact-test':
6
6
  message => $::qualified_fact;
7
7
  }
8
+ file {'template-test':
9
+ content => template('facts/template-test.erb'),
10
+ }
8
11
  }
@@ -0,0 +1,8 @@
1
+ define params_test ($param, $param_with_default = 'default_val') {
2
+ file {"${title}-param":
3
+ source => $param,
4
+ }
5
+ notify {"${title}-default":
6
+ message => $param_with_default,
7
+ }
8
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fizzgig
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-16 00:00:00.000000000 Z
12
+ date: 2013-03-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: puppet
@@ -66,7 +66,10 @@ extensions: []
66
66
  extra_rdoc_files: []
67
67
  files:
68
68
  - .gitignore
69
+ - CHANGELOG.md
69
70
  - Gemfile
71
+ - LICENSE
72
+ - README.asciidoc
70
73
  - TODO.org
71
74
  - fizzgig.gemspec
72
75
  - lib/fizzgig.rb
@@ -75,7 +78,6 @@ files:
75
78
  - spec/fizzgig_spec.rb
76
79
  - spec/modules/facts/manifests/class_test.pp
77
80
  - spec/modules/facts/manifests/define_test.pp
78
- - spec/modules/facts/manifests/template_test.pp
79
81
  - spec/modules/facts/templates/template-test.erb
80
82
  - spec/modules/functions/manifests/class_test.pp
81
83
  - spec/modules/functions/manifests/define_test.pp
@@ -83,6 +85,7 @@ files:
83
85
  - spec/modules/nginx/manifests/simple_server.pp
84
86
  - spec/modules/nginx/manifests/site.pp
85
87
  - spec/modules/nginx/templates/vhost.erb
88
+ - spec/modules/params_test/manifests/init.pp
86
89
  - spec/modules/webapp/manifests/init.pp
87
90
  - spec/spec_helper.rb
88
91
  homepage: https://github.com/philandstuff/fizzgig
@@ -113,7 +116,6 @@ test_files:
113
116
  - spec/fizzgig_spec.rb
114
117
  - spec/modules/facts/manifests/class_test.pp
115
118
  - spec/modules/facts/manifests/define_test.pp
116
- - spec/modules/facts/manifests/template_test.pp
117
119
  - spec/modules/facts/templates/template-test.erb
118
120
  - spec/modules/functions/manifests/class_test.pp
119
121
  - spec/modules/functions/manifests/define_test.pp
@@ -121,5 +123,6 @@ test_files:
121
123
  - spec/modules/nginx/manifests/simple_server.pp
122
124
  - spec/modules/nginx/manifests/site.pp
123
125
  - spec/modules/nginx/templates/vhost.erb
126
+ - spec/modules/params_test/manifests/init.pp
124
127
  - spec/modules/webapp/manifests/init.pp
125
128
  - spec/spec_helper.rb
@@ -1,5 +0,0 @@
1
- class facts::template_test {
2
- file {'template-test':
3
- content => template('facts/template-test.erb'),
4
- }
5
- }