chef-gen-flavor-example 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7c8947bf808a9a9ebc57df2c9807941452cdab12
4
- data.tar.gz: c689f14ea1ee0a5860e93cd9cc4908b2c72ae2df
3
+ metadata.gz: 94337106e35ac927f40a197cd1fd9afc915af387
4
+ data.tar.gz: a054bff6dc7d39728349576869a108543c257f5d
5
5
  SHA512:
6
- metadata.gz: 0bbf48685467b865b1049bc55866cae1847126f3ccbe399a9a4e25e2d33188b61d6060cecdb5b216272688afef15ce3bbfaf1d217202eb0e41a9f4147508df74
7
- data.tar.gz: 4bfb2fbd0475f9846f9c49c2dc0b7edae05d9c9e7dda15c4dd567b78ca9e551cc2046c2856b255092ccda1e459cb1158c04da8ecb6653b6e1aa096612a004d16
6
+ metadata.gz: 3819b14b65f156e1d9438646dd428f628b93d079d0500019f182dcb2c80406804ded11db2765db2ebe839dc9415a0c618de190b1a583b1e167d4ef8f69f453fd
7
+ data.tar.gz: fa367e6b7925f4d55f3c17e73754de70e26a3823adabaab9654014996d89311d6bf4827b5b73bbf95014b8c861f0d333f70c8d61a534fa589aad764e842fa4e4
@@ -1,12 +1,16 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- chef-gen-flavor-example (0.2.0.20150514061744)
5
- chef-gen-flavors (~> 0.3)
4
+ chef-gen-flavor-example (0.3.0.20150515152333)
5
+ chef-gen-flavors (~> 0.4)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
+ aruba (0.6.2)
11
+ childprocess (>= 0.3.6)
12
+ cucumber (>= 1.1.1)
13
+ rspec-expectations (>= 2.7.0)
10
14
  ast (2.0.0)
11
15
  astrolabe (1.3.0)
12
16
  parser (>= 2.2.0.pre.3, < 3.0)
@@ -51,7 +55,7 @@ GEM
51
55
  mixlib-shellout (>= 2.0.0.rc.0, < 3.0.0)
52
56
  paint (~> 1.0)
53
57
  solve (~> 1.2)
54
- chef-gen-flavors (0.3.0)
58
+ chef-gen-flavors (0.4.0)
55
59
  bogo-ui (~> 0.1)
56
60
  little-plugger (~> 1.1)
57
61
  chef-zero (4.2.1)
@@ -60,6 +64,8 @@ GEM
60
64
  mixlib-log (~> 1.3)
61
65
  rack
62
66
  uuidtools (~> 2.1)
67
+ childprocess (0.5.6)
68
+ ffi (~> 1.0, >= 1.0.11)
63
69
  coderay (1.1.0)
64
70
  colored (1.2)
65
71
  colorize (0.7.7)
@@ -67,6 +73,15 @@ GEM
67
73
  colored (>= 1.2)
68
74
  cookbook-omnifetch (0.2.1)
69
75
  minitar (~> 0.5.4)
76
+ cucumber (2.0.0)
77
+ builder (>= 2.1.2)
78
+ cucumber-core (~> 1.1.3)
79
+ diff-lcs (>= 1.1.3)
80
+ gherkin (~> 2.12)
81
+ multi_json (>= 1.7.5, < 2.0)
82
+ multi_test (>= 0.1.2)
83
+ cucumber-core (1.1.3)
84
+ gherkin (~> 2.12.0)
70
85
  dep-selector-libgecode (1.0.2)
71
86
  dep_selector (1.0.3)
72
87
  dep-selector-libgecode (~> 1.0)
@@ -79,6 +94,8 @@ GEM
79
94
  ffi (~> 1.5)
80
95
  libyajl2 (~> 1.2)
81
96
  formatador (0.2.5)
97
+ gherkin (2.12.2)
98
+ multi_json (~> 1.3)
82
99
  guard (2.12.5)
83
100
  formatador (>= 0.2.4)
84
101
  listen (~> 2.7)
@@ -126,6 +143,7 @@ GEM
126
143
  mixlib-log (1.6.0)
127
144
  mixlib-shellout (2.0.1)
128
145
  multi_json (1.11.0)
146
+ multi_test (0.1.2)
129
147
  nenv (0.2.0)
130
148
  net-scp (1.2.1)
131
149
  net-ssh (>= 2.6.5)
@@ -228,6 +246,7 @@ PLATFORMS
228
246
  ruby
229
247
 
230
248
  DEPENDENCIES
249
+ aruba (~> 0.6)
231
250
  chef-dk (~> 0.5)
232
251
  chef-gen-flavor-example!
233
252
  guard (~> 2.12)
data/History.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog for chef-gen-flavor-example
2
2
 
3
+ ## 0.3.0
4
+
5
+ * add an example of how to do feature testing of a flavor using Aruba
6
+
3
7
  ## 0.2.0
4
8
 
5
9
  * rename from chefdk-template-example to chef-gen-flavor-example
data/Rakefile CHANGED
@@ -8,7 +8,7 @@ begin
8
8
  s.version = ChefGen::Flavor::Example::VERSION
9
9
  developer 'James FitzGibbon', 'james.i.fitzgibbon@nordstrom.com'
10
10
  license 'apache2'
11
- extra_deps << ['chef-gen-flavors', '~> 0.3']
11
+ extra_deps << ['chef-gen-flavors', '~> 0.4']
12
12
  extra_dev_deps << ['chef-dk', '~> 0.5']
13
13
  extra_dev_deps << ['hoe', '~> 3.13']
14
14
  extra_dev_deps << ['hoe-gemspec', '~> 1.0']
@@ -21,6 +21,7 @@ begin
21
21
  extra_dev_deps << ['simplecov', '~> 0.9']
22
22
  extra_dev_deps << ['simplecov-console', '~> 0.2']
23
23
  extra_dev_deps << ['yard', '~> 0.8']
24
+ extra_dev_deps << ['aruba', '~> 0.6']
24
25
  end
25
26
  # re-generate our gemspec before packaging
26
27
  task package: 'gem:spec'
@@ -63,6 +64,17 @@ rescue LoadError
63
64
  task :test
64
65
  end
65
66
 
67
+ # Feature Tests
68
+ begin
69
+ require 'cucumber'
70
+ require 'cucumber/rake/task'
71
+ Cucumber::Rake::Task.new(:features)
72
+ rescue LoadError
73
+ puts 'Cucumber/Aruba not available; disabling feature tasks'
74
+ # create a no-op spec task for :default
75
+ task :features
76
+ end
77
+
66
78
  # Documentation
67
79
  begin
68
80
  require 'yard'
@@ -75,9 +87,9 @@ rescue LoadError
75
87
  puts 'yard not available; disabling tasks'
76
88
  end
77
89
 
78
- # test is an alias for spec
79
- desc 'runs unit tests'
80
- task test: [:spec]
90
+ # test is an alias for spec and features
91
+ desc 'runs unit and feature tests'
92
+ task test: [:spec, :features]
81
93
 
82
94
  # default is to test everything
83
95
  desc 'runs all tests'
@@ -1,14 +1,14 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: chef-gen-flavor-example 0.2.0.20150514061744 ruby lib
2
+ # stub: chef-gen-flavor-example 0.3.0.20150515152333 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "chef-gen-flavor-example"
6
- s.version = "0.2.0.20150514061744"
6
+ s.version = "0.3.0.20150515152333"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
10
10
  s.authors = ["James FitzGibbon"]
11
- s.date = "2015-05-14"
11
+ s.date = "2015-05-15"
12
12
  s.description = "An example plugin for [chef-gen-flavors](https://rubygems.org/gems/chef-gen-flavors).\n\nThis plugin makes use of most of the snippets available, and is meant as a\nreference implementation than for actual use. It demonstrates how to create\na template plugin with tests and serve as a good example of how to get\nstarted writing your own templates for distribution."
13
13
  s.email = ["james.i.fitzgibbon@nordstrom.com"]
14
14
  s.extra_rdoc_files = ["History.md", "Manifest.txt", "README.md"]
@@ -23,7 +23,7 @@ Gem::Specification.new do |s|
23
23
  s.specification_version = 4
24
24
 
25
25
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
- s.add_runtime_dependency(%q<chef-gen-flavors>, ["~> 0.3"])
26
+ s.add_runtime_dependency(%q<chef-gen-flavors>, ["~> 0.4"])
27
27
  s.add_development_dependency(%q<rdoc>, ["~> 4.0"])
28
28
  s.add_development_dependency(%q<chef-dk>, ["~> 0.5"])
29
29
  s.add_development_dependency(%q<hoe>, ["~> 3.13"])
@@ -37,8 +37,9 @@ Gem::Specification.new do |s|
37
37
  s.add_development_dependency(%q<simplecov>, ["~> 0.9"])
38
38
  s.add_development_dependency(%q<simplecov-console>, ["~> 0.2"])
39
39
  s.add_development_dependency(%q<yard>, ["~> 0.8"])
40
+ s.add_development_dependency(%q<aruba>, ["~> 0.6"])
40
41
  else
41
- s.add_dependency(%q<chef-gen-flavors>, ["~> 0.3"])
42
+ s.add_dependency(%q<chef-gen-flavors>, ["~> 0.4"])
42
43
  s.add_dependency(%q<rdoc>, ["~> 4.0"])
43
44
  s.add_dependency(%q<chef-dk>, ["~> 0.5"])
44
45
  s.add_dependency(%q<hoe>, ["~> 3.13"])
@@ -52,9 +53,10 @@ Gem::Specification.new do |s|
52
53
  s.add_dependency(%q<simplecov>, ["~> 0.9"])
53
54
  s.add_dependency(%q<simplecov-console>, ["~> 0.2"])
54
55
  s.add_dependency(%q<yard>, ["~> 0.8"])
56
+ s.add_dependency(%q<aruba>, ["~> 0.6"])
55
57
  end
56
58
  else
57
- s.add_dependency(%q<chef-gen-flavors>, ["~> 0.3"])
59
+ s.add_dependency(%q<chef-gen-flavors>, ["~> 0.4"])
58
60
  s.add_dependency(%q<rdoc>, ["~> 4.0"])
59
61
  s.add_dependency(%q<chef-dk>, ["~> 0.5"])
60
62
  s.add_dependency(%q<hoe>, ["~> 3.13"])
@@ -68,5 +70,6 @@ Gem::Specification.new do |s|
68
70
  s.add_dependency(%q<simplecov>, ["~> 0.9"])
69
71
  s.add_dependency(%q<simplecov-console>, ["~> 0.2"])
70
72
  s.add_dependency(%q<yard>, ["~> 0.8"])
73
+ s.add_dependency(%q<aruba>, ["~> 0.6"])
71
74
  end
72
75
  end
@@ -14,11 +14,12 @@ module ChefGen
14
14
  include ChefGen::Snippet::TestKitchen
15
15
  include ChefGen::Snippet::StandardIgnore
16
16
  include ChefGen::Snippet::StyleRubocop
17
+ include ChefGen::Snippet::GitInit
17
18
  include ChefGen::Snippet::ExampleFile
18
19
  include ChefGen::Snippet::ExampleTemplate
19
20
 
20
21
  # the version of the gem
21
- VERSION = '0.2.0'
22
+ VERSION = '0.3.0'
22
23
 
23
24
  class << self
24
25
  # :nocov:
@@ -1,12 +1,10 @@
1
1
  require 'chef_gen/flavor/example'
2
2
 
3
3
  RSpec.describe ChefGen::Flavor::Example do
4
+ include ChefDKGeneratorContext
5
+ include DummyRecipe
6
+
4
7
  before do
5
- @ctx = double('ChefDK generator context')
6
- allow(@ctx).to receive(:cookbook_root).and_return('/nonexistent')
7
- allow(@ctx).to receive(:cookbook_name).and_return('foo')
8
- allow(ChefDK::Generator).to receive(:context).and_return(@ctx)
9
- @recipe = double('Chef recipe').as_null_object
10
8
  @orig_stdout = $stdout
11
9
  $stdout = File.open(File::NULL, 'w')
12
10
  end
@@ -1,3 +1,5 @@
1
+ require 'rspec/core/shared_context'
2
+
1
3
  if ENV['COVERAGE']
2
4
  require 'simplecov'
3
5
  require 'simplecov-console'
@@ -21,3 +23,26 @@ RSpec.configure do |config|
21
23
  config.order = :random
22
24
  Kernel.srand config.seed
23
25
  end
26
+
27
+ # a shared context that stubs a ChefDK Generator context
28
+ module ChefDKGeneratorContext
29
+ extend RSpec::Core::SharedContext
30
+
31
+ before do
32
+ @ctx = double('ChefDK generator context')
33
+ allow(@ctx).to receive(:cookbook_root).and_return('/nonexistent')
34
+ allow(@ctx).to receive(:cookbook_name).and_return('foo')
35
+ allow(@ctx).to receive(:have_git).and_return(true)
36
+ allow(@ctx).to receive(:skip_git_init).and_return(false)
37
+ allow(ChefDK::Generator).to receive(:context).and_return(@ctx)
38
+ end
39
+ end
40
+
41
+ # a shared context that allows a recipe double to receive unknown methods
42
+ module DummyRecipe
43
+ extend RSpec::Core::SharedContext
44
+
45
+ before do
46
+ @recipe = double('Chef recipe').as_null_object
47
+ end
48
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-gen-flavor-example
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James FitzGibbon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-14 00:00:00.000000000 Z
11
+ date: 2015-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef-gen-flavors
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.3'
19
+ version: '0.4'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.3'
26
+ version: '0.4'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rdoc
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -206,6 +206,20 @@ dependencies:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0.8'
209
+ - !ruby/object:Gem::Dependency
210
+ name: aruba
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: '0.6'
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: '0.6'
209
223
  description: |-
210
224
  An example plugin for [chef-gen-flavors](https://rubygems.org/gems/chef-gen-flavors).
211
225