git_reflow 0.2.5 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +4 -37
- data/README.rdoc +282 -39
- data/Rakefile +0 -11
- data/git_reflow.gemspec +4 -3
- data/lib/git_reflow/version.rb +1 -1
- data/lib/git_reflow.rb +37 -36
- metadata +141 -225
- data/features/step_definitions/debug_steps.rb +0 -4
- data/features/step_definitions/gem_steps.rb +0 -3
- data/features/step_definitions/git_steps.rb +0 -138
- data/features/support/env.rb +0 -27
- data/features/support/gem.rb +0 -85
- data/features/support/github_helpers.rb +0 -3
- data/features/user_delivers_flow.feature +0 -22
- data/features/user_installs_gem.feature +0 -18
- data/features/user_starts_flow.feature +0 -19
- data/spec/fixtures/git/git_config +0 -7
- data/spec/fixtures/pull_requests/pull_request.json +0 -123
- data/spec/fixtures/pull_requests/pull_request_exists_error.json +0 -32
- data/spec/fixtures/pull_requests/pull_requests.json +0 -117
- data/spec/git_reflow_spec.rb +0 -139
- data/spec/spec_helper.rb +0 -28
- data/spec/support/fixtures.rb +0 -8
- data/spec/support/github_helpers.rb +0 -45
- data/spec/support/web_mocks.rb +0 -39
metadata
CHANGED
@@ -1,204 +1,153 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: git_reflow
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 3
|
9
|
+
- 1
|
10
|
+
version: 0.3.1
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Valentino Stoll
|
9
14
|
- Robert Stern
|
10
15
|
- Nicholas Hance
|
11
16
|
autorequire:
|
12
17
|
bindir: bin
|
13
18
|
cert_chain: []
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
none: false
|
20
|
-
requirements:
|
21
|
-
- -
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
|
24
|
-
|
19
|
+
|
20
|
+
date: 2013-07-12 00:00:00 Z
|
21
|
+
dependencies:
|
22
|
+
- !ruby/object:Gem::Dependency
|
23
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 3
|
29
|
+
segments:
|
30
|
+
- 0
|
31
|
+
version: "0"
|
25
32
|
prerelease: false
|
26
|
-
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
none: false
|
28
|
-
requirements:
|
29
|
-
- - ! '>='
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
version: '0'
|
32
|
-
- !ruby/object:Gem::Dependency
|
33
|
-
name: rdoc
|
34
|
-
requirement: !ruby/object:Gem::Requirement
|
35
|
-
none: false
|
36
|
-
requirements:
|
37
|
-
- - ! '>='
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '0'
|
40
33
|
type: :development
|
34
|
+
name: rake
|
35
|
+
requirement: *id001
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
38
|
+
none: false
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
hash: 3
|
43
|
+
segments:
|
44
|
+
- 0
|
45
|
+
version: "0"
|
41
46
|
prerelease: false
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
none: false
|
44
|
-
requirements:
|
45
|
-
- - ! '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: rspec
|
50
|
-
requirement: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
|
-
requirements:
|
53
|
-
- - ! '>='
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: '0'
|
56
47
|
type: :development
|
48
|
+
name: rdoc
|
49
|
+
requirement: *id002
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
hash: 3
|
57
|
+
segments:
|
58
|
+
- 0
|
59
|
+
version: "0"
|
57
60
|
prerelease: false
|
58
|
-
version_requirements: !ruby/object:Gem::Requirement
|
59
|
-
none: false
|
60
|
-
requirements:
|
61
|
-
- - ! '>='
|
62
|
-
- !ruby/object:Gem::Version
|
63
|
-
version: '0'
|
64
|
-
- !ruby/object:Gem::Dependency
|
65
|
-
name: aruba
|
66
|
-
requirement: !ruby/object:Gem::Requirement
|
67
|
-
none: false
|
68
|
-
requirements:
|
69
|
-
- - ~>
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
version: 0.4.6
|
72
61
|
type: :development
|
73
|
-
prerelease: false
|
74
|
-
version_requirements: !ruby/object:Gem::Requirement
|
75
|
-
none: false
|
76
|
-
requirements:
|
77
|
-
- - ~>
|
78
|
-
- !ruby/object:Gem::Version
|
79
|
-
version: 0.4.6
|
80
|
-
- !ruby/object:Gem::Dependency
|
81
62
|
name: jeweler
|
82
|
-
requirement:
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '0'
|
96
|
-
- !ruby/object:Gem::Dependency
|
97
|
-
name: webmock
|
98
|
-
requirement: !ruby/object:Gem::Requirement
|
99
|
-
none: false
|
100
|
-
requirements:
|
101
|
-
- - ! '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
|
-
requirements:
|
109
|
-
- - ! '>='
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
version: '0'
|
112
|
-
- !ruby/object:Gem::Dependency
|
113
|
-
name: colorize
|
114
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
-
none: false
|
116
|
-
requirements:
|
117
|
-
- - '='
|
118
|
-
- !ruby/object:Gem::Version
|
63
|
+
requirement: *id003
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - "="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
hash: 27
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
- 5
|
74
|
+
- 8
|
119
75
|
version: 0.5.8
|
120
|
-
type: :runtime
|
121
76
|
prerelease: false
|
122
|
-
version_requirements: !ruby/object:Gem::Requirement
|
123
|
-
none: false
|
124
|
-
requirements:
|
125
|
-
- - '='
|
126
|
-
- !ruby/object:Gem::Version
|
127
|
-
version: 0.5.8
|
128
|
-
- !ruby/object:Gem::Dependency
|
129
|
-
name: gli
|
130
|
-
requirement: !ruby/object:Gem::Requirement
|
131
|
-
none: false
|
132
|
-
requirements:
|
133
|
-
- - '='
|
134
|
-
- !ruby/object:Gem::Version
|
135
|
-
version: 2.1.0
|
136
77
|
type: :runtime
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
78
|
+
name: colorize
|
79
|
+
requirement: *id004
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
version_requirements: &id005 !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - "="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
hash: 11
|
87
|
+
segments:
|
88
|
+
- 2
|
89
|
+
- 1
|
90
|
+
- 0
|
143
91
|
version: 2.1.0
|
144
|
-
- !ruby/object:Gem::Dependency
|
145
|
-
name: highline
|
146
|
-
requirement: !ruby/object:Gem::Requirement
|
147
|
-
none: false
|
148
|
-
requirements:
|
149
|
-
- - ! '>='
|
150
|
-
- !ruby/object:Gem::Version
|
151
|
-
version: '0'
|
152
|
-
type: :runtime
|
153
92
|
prerelease: false
|
154
|
-
version_requirements: !ruby/object:Gem::Requirement
|
155
|
-
none: false
|
156
|
-
requirements:
|
157
|
-
- - ! '>='
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
version: '0'
|
160
|
-
- !ruby/object:Gem::Dependency
|
161
|
-
name: httpclient
|
162
|
-
requirement: !ruby/object:Gem::Requirement
|
163
|
-
none: false
|
164
|
-
requirements:
|
165
|
-
- - ! '>='
|
166
|
-
- !ruby/object:Gem::Version
|
167
|
-
version: '0'
|
168
93
|
type: :runtime
|
94
|
+
name: gli
|
95
|
+
requirement: *id005
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
version_requirements: &id006 !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
hash: 3
|
103
|
+
segments:
|
104
|
+
- 0
|
105
|
+
version: "0"
|
169
106
|
prerelease: false
|
170
|
-
version_requirements: !ruby/object:Gem::Requirement
|
171
|
-
none: false
|
172
|
-
requirements:
|
173
|
-
- - ! '>='
|
174
|
-
- !ruby/object:Gem::Version
|
175
|
-
version: '0'
|
176
|
-
- !ruby/object:Gem::Dependency
|
177
|
-
name: github_api
|
178
|
-
requirement: !ruby/object:Gem::Requirement
|
179
|
-
none: false
|
180
|
-
requirements:
|
181
|
-
- - '='
|
182
|
-
- !ruby/object:Gem::Version
|
183
|
-
version: 0.7.0
|
184
107
|
type: :runtime
|
108
|
+
name: highline
|
109
|
+
requirement: *id006
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
version_requirements: &id007 !ruby/object:Gem::Requirement
|
112
|
+
none: false
|
113
|
+
requirements:
|
114
|
+
- - ">="
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
hash: 3
|
117
|
+
segments:
|
118
|
+
- 0
|
119
|
+
version: "0"
|
185
120
|
prerelease: false
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
121
|
+
type: :runtime
|
122
|
+
name: httpclient
|
123
|
+
requirement: *id007
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
version_requirements: &id008 !ruby/object:Gem::Requirement
|
126
|
+
none: false
|
127
|
+
requirements:
|
128
|
+
- - "="
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
hash: 3
|
131
|
+
segments:
|
132
|
+
- 0
|
133
|
+
- 7
|
134
|
+
- 0
|
191
135
|
version: 0.7.0
|
136
|
+
prerelease: false
|
137
|
+
type: :runtime
|
138
|
+
name: github_api
|
139
|
+
requirement: *id008
|
192
140
|
description: Git Reflow manages your git workflow.
|
193
|
-
email:
|
141
|
+
email:
|
194
142
|
- dev@reenhanced.com
|
195
|
-
executables:
|
143
|
+
executables:
|
196
144
|
- git-reflow
|
197
145
|
- gitreflow-common
|
198
146
|
extensions: []
|
199
|
-
|
147
|
+
|
148
|
+
extra_rdoc_files:
|
200
149
|
- README.rdoc
|
201
|
-
files:
|
150
|
+
files:
|
202
151
|
- .gitignore
|
203
152
|
- Gemfile
|
204
153
|
- Gemfile.lock
|
@@ -206,15 +155,6 @@ files:
|
|
206
155
|
- Rakefile
|
207
156
|
- bin/git-reflow
|
208
157
|
- bin/gitreflow-common
|
209
|
-
- features/step_definitions/debug_steps.rb
|
210
|
-
- features/step_definitions/gem_steps.rb
|
211
|
-
- features/step_definitions/git_steps.rb
|
212
|
-
- features/support/env.rb
|
213
|
-
- features/support/gem.rb
|
214
|
-
- features/support/github_helpers.rb
|
215
|
-
- features/user_delivers_flow.feature
|
216
|
-
- features/user_installs_gem.feature
|
217
|
-
- features/user_starts_flow.feature
|
218
158
|
- git_reflow.gemspec
|
219
159
|
- lib/git_reflow.rb
|
220
160
|
- lib/git_reflow/base.rb
|
@@ -224,69 +164,45 @@ files:
|
|
224
164
|
- lib/git_reflow/commands/start.rb
|
225
165
|
- lib/git_reflow/commands/status.rb
|
226
166
|
- lib/git_reflow/version.rb
|
227
|
-
- spec/fixtures/git/git_config
|
228
|
-
- spec/fixtures/pull_requests/pull_request.json
|
229
|
-
- spec/fixtures/pull_requests/pull_request_exists_error.json
|
230
|
-
- spec/fixtures/pull_requests/pull_requests.json
|
231
|
-
- spec/git_reflow_spec.rb
|
232
|
-
- spec/spec_helper.rb
|
233
|
-
- spec/support/fixtures.rb
|
234
|
-
- spec/support/github_helpers.rb
|
235
|
-
- spec/support/web_mocks.rb
|
236
167
|
homepage: http://github.com/reenhanced/gitreflow
|
237
168
|
licenses: []
|
238
|
-
post_install_message: ! 'You need to setup your GitHub OAuth token
|
239
169
|
|
240
|
-
|
241
|
-
|
170
|
+
post_install_message: |-
|
171
|
+
You need to setup your GitHub OAuth token
|
172
|
+
Please run 'git-reflow setup'
|
173
|
+
rdoc_options:
|
242
174
|
- --title
|
243
175
|
- git_reflow
|
244
176
|
- --main
|
245
177
|
- README.rdoc
|
246
178
|
- -ri
|
247
|
-
require_paths:
|
179
|
+
require_paths:
|
248
180
|
- lib
|
249
181
|
- lib
|
250
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
182
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
251
183
|
none: false
|
252
|
-
requirements:
|
253
|
-
- -
|
254
|
-
- !ruby/object:Gem::Version
|
255
|
-
|
256
|
-
segments:
|
184
|
+
requirements:
|
185
|
+
- - ">="
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
hash: 3
|
188
|
+
segments:
|
257
189
|
- 0
|
258
|
-
|
259
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
|
+
version: "0"
|
191
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
260
192
|
none: false
|
261
|
-
requirements:
|
262
|
-
- -
|
263
|
-
- !ruby/object:Gem::Version
|
264
|
-
|
265
|
-
segments:
|
193
|
+
requirements:
|
194
|
+
- - ">="
|
195
|
+
- !ruby/object:Gem::Version
|
196
|
+
hash: 3
|
197
|
+
segments:
|
266
198
|
- 0
|
267
|
-
|
199
|
+
version: "0"
|
268
200
|
requirements: []
|
201
|
+
|
269
202
|
rubyforge_project:
|
270
|
-
rubygems_version: 1.8.
|
203
|
+
rubygems_version: 1.8.24
|
271
204
|
signing_key:
|
272
205
|
specification_version: 3
|
273
206
|
summary: A better git process
|
274
|
-
test_files:
|
275
|
-
|
276
|
-
- features/step_definitions/gem_steps.rb
|
277
|
-
- features/step_definitions/git_steps.rb
|
278
|
-
- features/support/env.rb
|
279
|
-
- features/support/gem.rb
|
280
|
-
- features/support/github_helpers.rb
|
281
|
-
- features/user_delivers_flow.feature
|
282
|
-
- features/user_installs_gem.feature
|
283
|
-
- features/user_starts_flow.feature
|
284
|
-
- spec/fixtures/git/git_config
|
285
|
-
- spec/fixtures/pull_requests/pull_request.json
|
286
|
-
- spec/fixtures/pull_requests/pull_request_exists_error.json
|
287
|
-
- spec/fixtures/pull_requests/pull_requests.json
|
288
|
-
- spec/git_reflow_spec.rb
|
289
|
-
- spec/spec_helper.rb
|
290
|
-
- spec/support/fixtures.rb
|
291
|
-
- spec/support/github_helpers.rb
|
292
|
-
- spec/support/web_mocks.rb
|
207
|
+
test_files: []
|
208
|
+
|
@@ -1,138 +0,0 @@
|
|
1
|
-
Given /^I have a git repository with a branch named "([^"]+)" checked out$/ do |branch_name|
|
2
|
-
steps %{
|
3
|
-
Given a directory named "master_repo"
|
4
|
-
And I cd to "master_repo"
|
5
|
-
And I write to "README" with:
|
6
|
-
| Initialized |
|
7
|
-
And I successfully run `git init`
|
8
|
-
And I successfully run `git add README`
|
9
|
-
And I successfully run `git commit -m "Initial commit"`
|
10
|
-
}
|
11
|
-
|
12
|
-
unless branch_name == "master"
|
13
|
-
steps %{
|
14
|
-
And I successfully run `git checkout -b #{branch_name}`
|
15
|
-
}
|
16
|
-
end
|
17
|
-
|
18
|
-
steps %{
|
19
|
-
And I cd to ".."
|
20
|
-
}
|
21
|
-
end
|
22
|
-
|
23
|
-
Given /^I have a remote git repository named "([^"]+)"$/ do |remote_name|
|
24
|
-
steps %{
|
25
|
-
Given a directory named "#{remote_name}_repo"
|
26
|
-
When I cd to "#{remote_name}_repo"
|
27
|
-
And I successfully run `git init`
|
28
|
-
And I write to "README" with:
|
29
|
-
| Initialized |
|
30
|
-
And I successfully run `git add .`
|
31
|
-
And I successfully run `git commit -am "Initial commit"`
|
32
|
-
And I cd to ".."
|
33
|
-
And I cd to "master_repo"
|
34
|
-
And I successfully run `git remote add #{remote_name} ../#{remote_name}_repo`
|
35
|
-
And I cd to ".."
|
36
|
-
}
|
37
|
-
end
|
38
|
-
|
39
|
-
Given /^the remote repository named "([^"]+)" has changes on the "([^"]+)" branch$/ do |remote_name, branch_name|
|
40
|
-
steps %{
|
41
|
-
Given a directory named "#{remote_name}_repo"
|
42
|
-
When I cd to "#{remote_name}_repo"
|
43
|
-
And I successfully run `git checkout #{branch_name}`
|
44
|
-
And I append to "README" with:
|
45
|
-
| changed |
|
46
|
-
And I successfully run `git add .`
|
47
|
-
And I successfully run `git commit -am "Changed readme"`
|
48
|
-
And I cd to ".."
|
49
|
-
}
|
50
|
-
end
|
51
|
-
|
52
|
-
Given /^the repository has been initialized$/ do
|
53
|
-
steps %{
|
54
|
-
Given I successfully run `git branch`
|
55
|
-
Then the output should contain "master"
|
56
|
-
}
|
57
|
-
end
|
58
|
-
|
59
|
-
Given /^I have a new branch named "([^"]+)" checked out$/ do |branch_name|
|
60
|
-
steps %{
|
61
|
-
When I cd to "master_repo"
|
62
|
-
And I successfully run `git checkout -b #{branch_name}`
|
63
|
-
}
|
64
|
-
end
|
65
|
-
|
66
|
-
Given /^I have a reviewed feature branch named "([^"]+)" checked out$/ do |branch_name|
|
67
|
-
pull = {
|
68
|
-
"title" => "Amazing new feature",
|
69
|
-
"body" => "Please pull this in!",
|
70
|
-
"head" => "reenhanced:#{branch_name}",
|
71
|
-
"base" => "master",
|
72
|
-
"state" => "open"
|
73
|
-
}
|
74
|
-
stub_github_with(
|
75
|
-
:user => 'reenhanced',
|
76
|
-
:repo => 'repo',
|
77
|
-
:branch => branch_name,
|
78
|
-
:pull => pull
|
79
|
-
)
|
80
|
-
|
81
|
-
review_options = {
|
82
|
-
'base' => pull['base'],
|
83
|
-
'title' => pull['title'],
|
84
|
-
'body' => pull['body']
|
85
|
-
}
|
86
|
-
|
87
|
-
GitReflow.review review_options
|
88
|
-
|
89
|
-
# ensure we do not stay inside the remote repo
|
90
|
-
steps %{
|
91
|
-
Given I cd to ".."
|
92
|
-
}
|
93
|
-
end
|
94
|
-
|
95
|
-
When /^I deliver my "([^"]+)" branch$/ do |branch_name|
|
96
|
-
pull = {
|
97
|
-
"title" => "Amazing new feature",
|
98
|
-
"body" => "Please pull this in!",
|
99
|
-
"head" => "reenhanced:#{branch_name}",
|
100
|
-
"base" => "master",
|
101
|
-
"state" => "open"
|
102
|
-
}
|
103
|
-
stub_github_with(
|
104
|
-
:user => 'reenhanced',
|
105
|
-
:repo => 'repo',
|
106
|
-
:branch => branch_name,
|
107
|
-
:pull => pull
|
108
|
-
)
|
109
|
-
GitReflow.deliver
|
110
|
-
GitReflow.stub(:current_branch).and_return("master")
|
111
|
-
end
|
112
|
-
|
113
|
-
Then /^a branch named "([^"]+)" should have been created from "([^"]+)"$/ do |new_branch, base_branch|
|
114
|
-
steps %{
|
115
|
-
Then the output should match /\\* \\[new branch\\]\\s* #{Regexp.escape(base_branch)}\\s* \\-\\> #{Regexp.escape(new_branch)}/
|
116
|
-
}
|
117
|
-
end
|
118
|
-
|
119
|
-
Then /^the base branch named "([^"]+)" should have fetched changes from the remote git repository "([^"]+)"$/ do |base_branch, remote_name|
|
120
|
-
steps %{
|
121
|
-
Then the output should match /\\* \\[new branch\\]\\s* #{Regexp.escape(base_branch)}\\s* \\-\\> #{remote_name}.#{Regexp.escape(base_branch)}/
|
122
|
-
}
|
123
|
-
end
|
124
|
-
|
125
|
-
Then /^the subcommand "([^"]+)" should run$/ do |subcommand|
|
126
|
-
has_subcommand?(subcommand).should be_true
|
127
|
-
end
|
128
|
-
|
129
|
-
Then /^the branch "([^"]+)" should be checked out$/ do |branch_name|
|
130
|
-
GitReflow.current_branch.should == branch_name
|
131
|
-
end
|
132
|
-
|
133
|
-
Then /^the branch "([^"]+)" should be up to date with the remote repository$/ do |branch_name|
|
134
|
-
steps %{
|
135
|
-
When I successfully run `git pull origin #{branch_name}`
|
136
|
-
Then the output should contain "Already up-to-date"
|
137
|
-
}
|
138
|
-
end
|
data/features/support/env.rb
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
require 'aruba/cucumber'
|
2
|
-
require 'ruby-debug'
|
3
|
-
require 'webmock/cucumber'
|
4
|
-
require 'cucumber/rspec/doubles'
|
5
|
-
|
6
|
-
Before('@gem') do
|
7
|
-
CukeGem.setup('./git_reflow.gemspec')
|
8
|
-
end
|
9
|
-
|
10
|
-
After('@gem') do
|
11
|
-
CukeGem.teardown
|
12
|
-
end
|
13
|
-
|
14
|
-
Before do
|
15
|
-
FileUtils.rm_rf Dir.glob("#{Dir.tmpdir}/aruba")
|
16
|
-
end
|
17
|
-
|
18
|
-
WebMock.disable_net_connect!
|
19
|
-
|
20
|
-
def has_subcommand?(command)
|
21
|
-
# In order to see if a subcommand is run
|
22
|
-
# we have to look it up in Aruba's process list
|
23
|
-
# Aruba has a get_process helper, but it errors if none is found
|
24
|
-
# See: https://github.com/cucumber/aruba/blob/master/lib/aruba/api.rb#L239
|
25
|
-
found = processes.reverse.find{ |name, _| name == command }
|
26
|
-
found[-1] if found
|
27
|
-
end
|
data/features/support/gem.rb
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
# Thanks to:
|
2
|
-
# Copyright 2011 Solano Labs All Rights Reserved
|
3
|
-
# https://gist.github.com/1132465
|
4
|
-
|
5
|
-
require 'aruba'
|
6
|
-
require 'aruba/api'
|
7
|
-
|
8
|
-
class CukeGem
|
9
|
-
@setup_done = false
|
10
|
-
|
11
|
-
class << self
|
12
|
-
include Aruba::Api
|
13
|
-
|
14
|
-
attr_reader :setup_done
|
15
|
-
|
16
|
-
def setup(gemspec, once=true)
|
17
|
-
gem_home = setup_env
|
18
|
-
if !@setup_done || !once then
|
19
|
-
@setup_done = true
|
20
|
-
mkgemdir(gem_home)
|
21
|
-
gem_install(gemspec)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
def teardown
|
26
|
-
restore_env
|
27
|
-
end
|
28
|
-
|
29
|
-
def setup_env
|
30
|
-
tid = ENV['TDDIUM_TID'] || ''
|
31
|
-
gem_home = File.join(ENV['HOME'], 'tmp', 'aruba-gem')
|
32
|
-
gem_home = File.expand_path(gem_home)
|
33
|
-
|
34
|
-
set_env('GEM_HOME', gem_home)
|
35
|
-
set_env('GEM_PATH', gem_home)
|
36
|
-
set_env('BUNDLE_PATH', gem_home)
|
37
|
-
unset_bundler_env_vars
|
38
|
-
|
39
|
-
paths = (ENV['PATH'] || "").split(File::PATH_SEPARATOR)
|
40
|
-
paths.unshift(File.join(gem_home, 'bin'))
|
41
|
-
set_env('PATH', paths.uniq.join(File::PATH_SEPARATOR))
|
42
|
-
|
43
|
-
return gem_home
|
44
|
-
end
|
45
|
-
|
46
|
-
def mkgemdir(gem_home)
|
47
|
-
FileUtils::rm_rf(gem_home)
|
48
|
-
FileUtils::mkdir_p(gem_home)
|
49
|
-
|
50
|
-
output = `gem install bundler`
|
51
|
-
if $?.exitstatus != 0 then
|
52
|
-
raise "unable to install bundler into #{gem_home}: #{output}"
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
def gem_install(gemspec)
|
57
|
-
gem_file = nil
|
58
|
-
begin
|
59
|
-
pwd = Dir.pwd
|
60
|
-
gemspec_dir = File.dirname(gemspec)
|
61
|
-
Dir.chdir(gemspec_dir)
|
62
|
-
output = `gem build #{File.basename(gemspec)}`
|
63
|
-
Dir.chdir(pwd)
|
64
|
-
|
65
|
-
if $?.exitstatus != 0 then
|
66
|
-
raise "unable to build gem: #{output}"
|
67
|
-
end
|
68
|
-
|
69
|
-
if output =~ /File:\s+([A-Za-z0-9_.-]+[.]gem)/ then
|
70
|
-
gem_file = $1
|
71
|
-
output = `gem install #{File.join(gemspec_dir, gem_file)}`
|
72
|
-
if $?.exitstatus != 0 then
|
73
|
-
raise "unable to install gem: #{output}"
|
74
|
-
end
|
75
|
-
else
|
76
|
-
raise "garbled gem build output: #{output}"
|
77
|
-
end
|
78
|
-
ensure
|
79
|
-
if gem_file then
|
80
|
-
FileUtils.rm_f(File.join(gemspec_dir, gem_file))
|
81
|
-
end
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
85
|
-
end
|