clintegracon 0.4.1 → 0.5.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
- ---
2
- SHA1:
3
- data.tar.gz: 3bdace78261ca262aa53f9124c582f7e17adbf91
4
- metadata.gz: ce8b35a77767eefa0b8e5f518edd292225bbf1cb
5
- SHA512:
6
- data.tar.gz: 4c055116f2d3f625bd423d2f28c11ebf808eac6983ddd19a3d52f303b011489dafffac365e81afdc35326cdf560ed4c70735b0925a773b8d97e7cd2842a161ea
7
- metadata.gz: daca9326fc434414d5ed63836b3b743538dd56cb5ec8f49640a4171afc69a272c0b470e3a9f96d49d83587932ad1a6b7f9f3637bf6f98ee7cc3e97473d04ae07
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 25fcbf3498d6a95409593f24de5d6885bf1d7e33
4
+ data.tar.gz: a6e78918b216994abe40dba9c275fba234f903d0
5
+ SHA512:
6
+ metadata.gz: 32aa4fc119befca2f816fa6566c525de80a05dbaadf870b687021ae80549c2ef688437d020771d297eedeec8687b12443d4a65b5ba9a7130a2a2b1245226eb35
7
+ data.tar.gz: 6a8ae5276a8eecbeff4e024820de3f9098d2f1f0e2f21e1c5664e23dd9d47fd6c9bea2bf6d9d8fd0541c3482523b294b310abb73719e9b5c74735d61554a21bc
@@ -1,12 +1,12 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 2.1.1
5
+
1
6
  #addons:
2
7
  # code_climate:
3
8
  # repo_token: #TODO
4
9
 
5
- env:
6
- - RVM_RUBY_VERSION=system
7
- - RVM_RUBY_VERSION=1.8.7-p358
8
-
9
- install:
10
- - bundle install --without=documentation --path ./travis_bundle_dir
10
+ bundler_args: --without=documentation
11
11
 
12
- script: rake spec
12
+ script: bundle exec rake spec
data/README.md CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  [![Gem](https://img.shields.io/gem/v/clintegracon.svg?style=flat)](http://rubygems.org/gems/clintegracon)
4
4
  [![Build Status](https://img.shields.io/travis/mrackwitz/CLIntegracon/master.svg?style=flat)](https://travis-ci.org/mrackwitz/CLIntegracon)
5
- [![Coverage](https://img.shields.io/codeclimate/coverage/github/mrackwitz/CLIntegracon.svg?style=flat)](https://codeclimate.com/github/mrackwitz/CLIntegracon)
6
5
  [![Code Climate](https://img.shields.io/codeclimate/github/mrackwitz/CLIntegracon.svg?style=flat)](https://codeclimate.com/github/mrackwitz/CLIntegracon)
7
6
 
8
7
  CLIntegracon allows you to build *Integration* specs for your *CLI*,
@@ -66,8 +65,15 @@ This is not fixed, but if yours differ, you have to change paths accordingly.
66
65
 
67
66
  ```ruby
68
67
  CLIntegracon.configure do |c|
69
- c.context.spec_path = File.expand_path('../integration', __FILE__)
70
- c.context.temp_path = File.expand_path('../../tmp', __FILE__)
68
+ c.spec_path = File.expand_path('../integration', __FILE__)
69
+ c.temp_path = File.expand_path('../../tmp', __FILE__)
70
+
71
+ # Ignore certain files ...
72
+ c.ignores '.gitkeep'
73
+
74
+ # ... or explicitly ignore all hidden files. (While the default is that they
75
+ # are included in the file tree diff.)
76
+ c.include_hidden_files = true
71
77
 
72
78
  c.hook_into :bacon
73
79
  end
@@ -101,16 +107,7 @@ This is not fixed, but if yours differ, you have to change paths accordingly.
101
107
  # Replace special paths in execution output by a placeholder, so that the
102
108
  # compared outputs doesn't differ dependent on the absolute location where
103
109
  # your tested CLI was executed.
104
- s.has_special_path ROOT.to_s, 'ROOT'
105
- end
106
-
107
- context do |c|
108
- # Ignore certain files ...
109
- c.ignores '.gitkeep'
110
-
111
- # ... or explicitly ignore all hidden files. (While the default is that they
112
- # are included in the file tree diff.)
113
- c.include_hidden_files = true
110
+ s.replace_path ROOT.to_s, 'ROOT'
114
111
  end
115
112
 
116
113
  describe 'Brew recipes' do
data/Rakefile CHANGED
@@ -22,7 +22,7 @@ begin
22
22
  if ok
23
23
  puts '✓ Spec for bacon passed.'.green
24
24
  else
25
- puts '✗ Spec for bacon failed.'.red
25
+ fail '✗ Spec for bacon failed.'.red
26
26
  end
27
27
  end
28
28
  end
@@ -31,8 +31,11 @@ begin
31
31
  task :bacon_integration_runner do
32
32
  sh [
33
33
  'bundle exec bacon spec/bacon/spec_helper.rb',
34
- 'sed -e "s|$(echo $GEM_HOME)|\$GEM_HOME|g"',
35
- 'sed -e "s|$(dirname ~/.)|\$HOME|g"'
34
+ 'sed -e "s|$(dirname ~/.)|\$HOME|g"',
35
+ # Keep exception formatting of different ruby versions clean and compatible
36
+ 'sed -E "s|^([[:space:]])./|\1|g"',
37
+ 'sed -e "s|:in \`.*\'$||g"',
38
+ 'awk "!/\/bin\/ruby_executable_hooks/"'
36
39
  ].join " | "
37
40
  end
38
41
 
@@ -42,7 +45,7 @@ begin
42
45
  ]
43
46
 
44
47
  desc 'Run all unit specs'
45
- task :unit do
48
+ task :unit => [:prepare] do
46
49
  sh "bundle exec bacon #{specs('unit/**/*')}"
47
50
  end
48
51
 
@@ -28,10 +28,10 @@ module CLIntegracon::Adapter::Bacon
28
28
  instance_exec(@subject, &block)
29
29
  end
30
30
 
31
- # Get or configure the current context
31
+ # Get or configure the current context for FileTreeSpecs
32
32
  #
33
33
  # @note On first call this will create a new context on base of the
34
- # shared configuration and store it in the ivar `@context`.
34
+ # shared configuration and store it in the ivar `@file_tree_spec_context`.
35
35
  #
36
36
  # @param [Block<(FileTreeSpecContext) -> ()>]
37
37
  # This block, if given, will be evaluated on the caller.
@@ -40,10 +40,10 @@ module CLIntegracon::Adapter::Bacon
40
40
  # @return [FileTreeSpecContext]
41
41
  # the spec context, will be lazily created if not already present.
42
42
  #
43
- def context &block
44
- @context ||= CLIntegracon.shared_config.context.dup
45
- return @context if block.nil?
46
- instance_exec(@context, &block)
43
+ def file_tree_spec_context &block
44
+ @file_tree_spec_context ||= CLIntegracon.shared_config.file_tree_spec_context.dup
45
+ return @file_tree_spec_context if block.nil?
46
+ instance_exec(@file_tree_spec_context, &block)
47
47
  end
48
48
 
49
49
  # Works like `behaves_like`, but takes arguments for the shared example
@@ -63,8 +63,8 @@ module CLIntegracon::Adapter::Bacon
63
63
  #
64
64
  # behaves_like cli_spec('my_spec_dir', 'install --verbose')
65
65
  #
66
- # @note This expects that a method `context` is defined, which is returning an
67
- # instance of {FileTreeSpecContext}.
66
+ # @note This expects that a method `file_tree_spec_context` is defined, which is
67
+ # returning an instance of {FileTreeSpecContext}.
68
68
  #
69
69
  # @param [String] spec_dir
70
70
  # the concrete directory of the spec, see {file_spec}.
@@ -95,8 +95,8 @@ module CLIntegracon::Adapter::Bacon
95
95
  # # do some changes to the current dir
96
96
  # end
97
97
  #
98
- # @note This expects that a method `context` is defined, which is returning an
99
- # instance of {FileTreeSpecContext}.
98
+ # @note This expects that a method `file_tree_spec_context` is defined, which is
99
+ # returning an instance of {FileTreeSpecContext}.
100
100
  #
101
101
  # @param [String] spec_dir
102
102
  # the concrete directory of the spec to be passed to
@@ -116,7 +116,7 @@ module CLIntegracon::Adapter::Bacon
116
116
  shared_name = spec_dir
117
117
 
118
118
  shared shared_name do
119
- context.spec(spec_dir).run do |spec|
119
+ file_tree_spec_context.spec(spec_dir).run do |spec|
120
120
  instance_eval &block
121
121
 
122
122
  spec.compare do |diff|
@@ -148,7 +148,7 @@ module CLIntegracon::Adapter::Bacon
148
148
 
149
149
  # Describe a command line interface
150
150
  # This method basically behaves like {Bacon::Context.describe}, but it provides
151
- # automatically the methods #subject, #context, #cli_spec and #file_spec.
151
+ # automatically the methods #subject, #file_tree_spec_context, #cli_spec and #file_spec.
152
152
  #
153
153
  # @param [String] subject_name
154
154
  # the subject name will be used as first argument to initialize
@@ -34,8 +34,28 @@ module CLIntegracon
34
34
  #
35
35
  # @return [FileTreeSpecContext]
36
36
  #
37
- def context
38
- @context ||= FileTreeSpecContext.new()
37
+ def file_tree_spec_context
38
+ @file_tree_spec_context ||= FileTreeSpecContext.new()
39
+ end
40
+
41
+ # Delegate missing methods to #file_tree_spec_context
42
+ #
43
+ def method_missing(method, *args, &block)
44
+ if file_tree_spec_context.respond_to?(method)
45
+ file_tree_spec_context.send(method, *args, &block)
46
+ else
47
+ super
48
+ end
49
+ end
50
+
51
+ # Take care of delegation to #file_tree_spec_context
52
+ #
53
+ def respond_to?(method)
54
+ if file_tree_spec_context.respond_to?(method)
55
+ true
56
+ else
57
+ super
58
+ end
39
59
  end
40
60
 
41
61
  # Hook this gem in a test framework by a supported adapter
@@ -167,7 +167,7 @@ module CLIntegracon
167
167
  #
168
168
  def glob_all(path=nil)
169
169
  Dir.chdir path || '.' do
170
- Dir.glob("**/*", context.include_hidden_files? ? File::FNM_DOTMATCH : 0).map { |path|
170
+ Dir.glob("**/*", context.include_hidden_files? ? File::FNM_DOTMATCH : 0).sort.map { |path|
171
171
  Pathname(path)
172
172
  }
173
173
  end
@@ -93,7 +93,7 @@ module CLIntegracon
93
93
  # Temp dir, doesn't have to exist itself, it will been created, but let's ensure
94
94
  # that at least the last but one path component exist.
95
95
  raise "temp_path's parent directory doesn't exist" unless (Pathname(temp_path) + '..').exist?
96
- @temp_path = Pathname(temp_path).realpath
96
+ @temp_path = Pathname(temp_path)
97
97
  end
98
98
 
99
99
  def before_dir=(before_dir)
@@ -159,10 +159,11 @@ module CLIntegracon
159
159
 
160
160
  # @!group Interaction
161
161
 
162
- # Prepare the temporary directory
162
+ # Prepare the temporary directory and the attribute #temp_path itself.
163
163
  #
164
164
  def prepare!
165
165
  temp_path.mkpath
166
+ @temp_path = temp_path.realpath
166
167
  end
167
168
 
168
169
  # Get a specific spec with given folder to run it
@@ -25,10 +25,11 @@ module CLIntegracon
25
25
  attr_accessor :default_args
26
26
 
27
27
  # @return [Hash<String,String>]
28
- # The special paths, which are not relative to the project, when the statement
29
- # will be executed. These are paths were side-effects occur, like manipulation
28
+ # The replace paths, whose keys are expected to occur in the output,
29
+ # which are not printed relative to the project, when the subject will
30
+ # be executed. These are e.g. paths were side-effects occur, like manipulation
30
31
  # of user configurations in dot files or caching-specific directories.
31
- attr_accessor :special_paths
32
+ attr_accessor :replace_paths
32
33
 
33
34
  # @return [String]
34
35
  # The path where the output of the executable will be written to.
@@ -52,7 +53,7 @@ module CLIntegracon
52
53
  self.executable = executable || name
53
54
  self.environment_vars = {}
54
55
  self.default_args = []
55
- self.special_paths = {}
56
+ self.replace_paths = {}
56
57
  self.output_path = 'execution_output.txt'
57
58
  end
58
59
 
@@ -61,7 +62,8 @@ module CLIntegracon
61
62
 
62
63
  # @!group DSL-like Setter
63
64
 
64
- # Define a path in the user directory as special path
65
+ # Define a path, whose occurrences in the output should been replaced by
66
+ # either its basename or a given placeholder.
65
67
  #
66
68
  # @param [String] path
67
69
  # The path
@@ -69,12 +71,13 @@ module CLIntegracon
69
71
  # @param [String] name
70
72
  # The name of the path, or the basename of the given path
71
73
  #
72
- def has_special_path(path, name=nil)
74
+ def replace_path(path, name=nil)
73
75
  name ||= File.basename path
74
- self.special_paths[name] = path
76
+ self.replace_paths[name] = path
75
77
  end
76
78
 
77
- # Define a path in the user directory as special path
79
+ # Define a path in the user directory, whose occurrences in the output
80
+ # should been replaced by either its basename or a given placeholder.
78
81
  #
79
82
  # @param [String] path
80
83
  # The path
@@ -82,8 +85,8 @@ module CLIntegracon
82
85
  # @param [String] name
83
86
  # The name of the path, or the basename of the given path
84
87
  #
85
- def has_special_user_path(path, name=nil)
86
- self.has_special_path %r[/Users/.*/#{path.to_s}], name
88
+ def replace_user_path(path, name=nil)
89
+ self.replace_path %r[/Users/.*/#{path.to_s}], name
87
90
  end
88
91
 
89
92
  #-----------------------------------------------------------------------------#
@@ -114,7 +117,7 @@ module CLIntegracon
114
117
  file.write command.sub(executable, name)
115
118
  file.write "\n"
116
119
 
117
- special_paths.each do |key, path|
120
+ replace_paths.each do |key, path|
118
121
  output.gsub!(path, key)
119
122
  end
120
123
 
@@ -1,3 +1,3 @@
1
1
  module CLIntegracon
2
- VERSION = "0.4.1"
2
+ VERSION = "0.5.0"
3
3
  end
@@ -6,16 +6,16 @@ CLIntegracon::Adapter::Bacon
6
6
  - BlackEye.brewed-coffee
7
7
  - CaPheSuaDa.brewed-coffee
8
8
  - Coffeemakerfile.yml
9
- - execution_output.txt
10
9
  - RedTux.brewed-coffee
10
+ - execution_output.txt
11
11
  - should not produce unexpected files [FAILED]
12
12
  with honey as sweetner
13
13
  - $ coffee-maker --sweetner=honey
14
14
  - Affogato.brewed-coffee [FAILED]
15
15
  - BlackEye.brewed-coffee [FAILED]
16
16
  - Coffeemakerfile.yml
17
- - execution_output.txt
18
17
  - RedTux.brewed-coffee [FAILED]
18
+ - execution_output.txt
19
19
  - should not produce unexpected files
20
20
  Get help
21
21
  - $ coffee-maker --help
@@ -24,12 +24,11 @@ CLIntegracon::Adapter::Bacon
24
24
 
25
25
  Bacon::Error: Unexpected files for coffeemaker_no_milk:
26
26
  * Affogato.brewed-coffee
27
- ./spec/bacon/spec_helper.rb:45
28
- ./spec/bacon/spec_helper.rb:44
29
- ./spec/bacon/spec_helper.rb:42
30
- ./spec/bacon/spec_helper.rb:17
31
- ./spec/bacon/spec_helper.rb:15
32
- $GEM_HOME/bin/ruby_executable_hooks:15
27
+ spec/bacon/spec_helper.rb:45
28
+ spec/bacon/spec_helper.rb:44
29
+ spec/bacon/spec_helper.rb:42
30
+ spec/bacon/spec_helper.rb:17
31
+ spec/bacon/spec_helper.rb:15
33
32
 
34
33
  Bacon::Error: File comparison error `Affogato.brewed-coffee` for coffeemaker_sweetner_honey:
35
34
  --- DIFF -----------------------------------------------------------------------
@@ -38,21 +37,19 @@ Bacon::Error: File comparison error `Affogato.brewed-coffee` for coffeemaker_swe
38
37
  @sweetner = honey
39
38
  --- END ------------------------------------------------------------------------
40
39
 
41
- ./spec/bacon/spec_helper.rb:49
42
- ./spec/bacon/spec_helper.rb:48
43
- ./spec/bacon/spec_helper.rb:42
44
- ./spec/bacon/spec_helper.rb:17
45
- ./spec/bacon/spec_helper.rb:15
46
- $GEM_HOME/bin/ruby_executable_hooks:15
40
+ spec/bacon/spec_helper.rb:49
41
+ spec/bacon/spec_helper.rb:48
42
+ spec/bacon/spec_helper.rb:42
43
+ spec/bacon/spec_helper.rb:17
44
+ spec/bacon/spec_helper.rb:15
47
45
 
48
46
  Bacon::Error: Missing file for coffeemaker_sweetner_honey:
49
47
  * BlackEye.brewed-coffee
50
- ./spec/bacon/spec_helper.rb:49
51
- ./spec/bacon/spec_helper.rb:48
52
- ./spec/bacon/spec_helper.rb:42
53
- ./spec/bacon/spec_helper.rb:17
54
- ./spec/bacon/spec_helper.rb:15
55
- $GEM_HOME/bin/ruby_executable_hooks:15
48
+ spec/bacon/spec_helper.rb:49
49
+ spec/bacon/spec_helper.rb:48
50
+ spec/bacon/spec_helper.rb:42
51
+ spec/bacon/spec_helper.rb:17
52
+ spec/bacon/spec_helper.rb:15
56
53
 
57
54
  Bacon::Error: File comparison error `RedTux.brewed-coffee` for coffeemaker_sweetner_honey:
58
55
  --- DIFF -----------------------------------------------------------------------
@@ -62,11 +59,10 @@ Bacon::Error: File comparison error `RedTux.brewed-coffee` for coffeemaker_sweet
62
59
  + @sweetner = honey
63
60
  --- END ------------------------------------------------------------------------
64
61
 
65
- ./spec/bacon/spec_helper.rb:49
66
- ./spec/bacon/spec_helper.rb:48
67
- ./spec/bacon/spec_helper.rb:42
68
- ./spec/bacon/spec_helper.rb:17
69
- ./spec/bacon/spec_helper.rb:15
70
- $GEM_HOME/bin/ruby_executable_hooks:15
62
+ spec/bacon/spec_helper.rb:49
63
+ spec/bacon/spec_helper.rb:48
64
+ spec/bacon/spec_helper.rb:42
65
+ spec/bacon/spec_helper.rb:17
66
+ spec/bacon/spec_helper.rb:15
71
67
 
72
68
  17 specifications (27 requirements), 4 failures, 0 errors
@@ -5,8 +5,8 @@ ROOT = Pathname.new(File.expand_path('../../../', __FILE__))
5
5
  BIN = ROOT + 'spec/fixtures/bin'
6
6
 
7
7
  CLIntegracon.configure do |c|
8
- c.context.spec_path = ROOT + 'spec/integration'
9
- c.context.temp_path = ROOT + 'tmp/bacon_specs'
8
+ c.spec_path = ROOT + 'spec/integration'
9
+ c.temp_path = ROOT + 'tmp/bacon_specs'
10
10
 
11
11
  c.hook_into :bacon
12
12
  end
@@ -26,11 +26,11 @@ describe CLIntegracon::Adapter::Bacon do
26
26
  '--verbose',
27
27
  '--no-ansi'
28
28
  ]
29
- s.has_special_path ROOT.to_s, 'ROOT'
30
- s.has_special_path `bundle show claide`.rstrip, 'CLAIDE_SRC'
29
+ s.replace_path ROOT.to_s, 'ROOT'
30
+ s.replace_path `bundle show claide`.rstrip, 'CLAIDE_SRC'
31
31
  end
32
32
 
33
- context do |c|
33
+ file_tree_spec_context do |c|
34
34
  c.ignores '.DS_Store'
35
35
  c.ignores '.gitkeep'
36
36
 
@@ -33,7 +33,7 @@ describe 'CLIntegracon::Adapter::Bacon' do
33
33
 
34
34
  it 'can access to methods defined in CLIntegracon::Adapter::Bacon::Context' do
35
35
  @context.should.respond_to? :subject
36
- @context.should.respond_to? :context
36
+ @context.should.respond_to? :file_tree_spec_context
37
37
  @context.should.respond_to? :cli_spec
38
38
  @context.should.respond_to? :file_spec
39
39
  end
@@ -111,7 +111,7 @@ describe 'CLIntegracon::Adapter::Bacon' do
111
111
  get_ivar.should.be.an.instance_of? @type
112
112
  end
113
113
 
114
- it 'should get a new by duplicating from shared context' do
114
+ it 'should get a new by duplicating from shared config' do
115
115
  CLIntegracon.shared_config.expects(@method).returns mock(:dup)
116
116
  call_accessor
117
117
  end
@@ -149,9 +149,9 @@ describe 'CLIntegracon::Adapter::Bacon' do
149
149
  behaves_like 'mutating accessor'
150
150
  end
151
151
 
152
- describe '#context' do
152
+ describe '#file_tree_spec_context' do
153
153
  before do
154
- @method = :context
154
+ @method = :file_tree_spec_context
155
155
  @type = CLIntegracon::FileTreeSpecContext
156
156
  end
157
157
 
@@ -175,7 +175,7 @@ describe 'CLIntegracon::Adapter::Bacon' do
175
175
 
176
176
  it 'executes the FileTreeSpecContext' do
177
177
  describe_cli 'git' do
178
- context.expects(:spec).once.returns mock(:run => true)
178
+ file_tree_spec_context.expects(:spec).once.returns mock(:run => true)
179
179
  behaves_like file_spec('git')
180
180
  end
181
181
  end
metadata CHANGED
@@ -1,103 +1,138 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: clintegracon
3
- version: !ruby/object:Gem::Version
4
- version: 0.4.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.0
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Marius Rackwitz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
-
12
- date: 2014-08-04 00:00:00 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
11
+ date: 2014-08-08 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
15
14
  name: bundler
16
- prerelease: false
17
- requirement: &id001 !ruby/object:Gem::Requirement
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: "1.3"
22
- version_requirements: *id001
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
23
20
  type: :development
24
- - !ruby/object:Gem::Dependency
25
- name: rake
26
21
  prerelease: false
27
- requirement: &id002 !ruby/object:Gem::Requirement
28
- requirements:
29
- - - ~>
30
- - !ruby/object:Gem::Version
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
31
33
  version: 10.1.0
32
- version_requirements: *id002
33
34
  type: :development
34
- - !ruby/object:Gem::Dependency
35
- name: bacon
36
35
  prerelease: false
37
- requirement: &id003 !ruby/object:Gem::Requirement
38
- requirements:
39
- - &id005
40
- - ">="
41
- - !ruby/object:Gem::Version
42
- version: "0"
43
- version_requirements: *id003
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 10.1.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: bacon
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
44
48
  type: :development
45
- - !ruby/object:Gem::Dependency
46
- name: mocha
47
49
  prerelease: false
48
- requirement: &id004 !ruby/object:Gem::Requirement
49
- requirements:
50
- - - ~>
51
- - !ruby/object:Gem::Version
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: mocha
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
52
61
  version: 1.0.0
53
- version_requirements: *id004
54
62
  type: :development
55
- - !ruby/object:Gem::Dependency
56
- name: mocha-on-bacon
57
63
  prerelease: false
58
- requirement: &id006 !ruby/object:Gem::Requirement
59
- requirements:
60
- - *id005
61
- version_requirements: *id006
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.0.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: mocha-on-bacon
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
62
76
  type: :development
63
- - !ruby/object:Gem::Dependency
64
- name: claide
65
77
  prerelease: false
66
- requirement: &id007 !ruby/object:Gem::Requirement
67
- requirements:
68
- - *id005
69
- version_requirements: *id007
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: claide
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
70
90
  type: :development
71
- - !ruby/object:Gem::Dependency
72
- name: colored
73
91
  prerelease: false
74
- requirement: &id008 !ruby/object:Gem::Requirement
75
- requirements:
76
- - - ~>
77
- - !ruby/object:Gem::Version
78
- version: "1.2"
79
- version_requirements: *id008
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: colored
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.2'
80
104
  type: :runtime
81
- - !ruby/object:Gem::Dependency
82
- name: diffy
83
105
  prerelease: false
84
- requirement: &id009 !ruby/object:Gem::Requirement
85
- requirements:
86
- - *id005
87
- version_requirements: *id009
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.2'
111
+ - !ruby/object:Gem::Dependency
112
+ name: diffy
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
88
118
  type: :runtime
89
- description: CLIntegracon allows you to build Integration specs for your CLI,independent if they are based on Ruby or another technology.It is especially useful if your command modifies the file system.It provides an integration for Bacon.
90
- email:
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description: CLIntegracon allows you to build Integration specs for your CLI,independent
126
+ if they are based on Ruby or another technology.It is especially useful if your
127
+ command modifies the file system.It provides an integration for Bacon.
128
+ email:
91
129
  - git@mariusrackwitz.de
92
130
  executables: []
93
-
94
131
  extensions: []
95
-
96
132
  extra_rdoc_files: []
97
-
98
- files:
99
- - .gitignore
100
- - .travis.yml
133
+ files:
134
+ - ".gitignore"
135
+ - ".travis.yml"
101
136
  - Gemfile
102
137
  - LICENSE.txt
103
138
  - README.md
@@ -132,29 +167,30 @@ files:
132
167
  - spec/unit/adapter/bacon_spec.rb
133
168
  - spec/unit/configuration_spec.rb
134
169
  homepage: https://github.com/mrackwitz/CLIntegracon
135
- licenses:
170
+ licenses:
136
171
  - MIT
137
172
  metadata: {}
138
-
139
173
  post_install_message:
140
174
  rdoc_options: []
141
-
142
- require_paths:
175
+ require_paths:
143
176
  - lib
144
- required_ruby_version: !ruby/object:Gem::Requirement
145
- requirements:
146
- - *id005
147
- required_rubygems_version: !ruby/object:Gem::Requirement
148
- requirements:
149
- - *id005
177
+ required_ruby_version: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
182
+ required_rubygems_version: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - ">="
185
+ - !ruby/object:Gem::Version
186
+ version: '0'
150
187
  requirements: []
151
-
152
188
  rubyforge_project:
153
- rubygems_version: 2.0.14
189
+ rubygems_version: 2.2.2
154
190
  signing_key:
155
191
  specification_version: 4
156
192
  summary: Integration specs for your CLI
157
- test_files:
193
+ test_files:
158
194
  - spec/bacon/execution_output.txt
159
195
  - spec/bacon/spec_helper.rb
160
196
  - spec/fixtures/bin/coffeemaker.rb