git-topic 0.1.6.4 → 0.2.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/.vimspell.utf8.add +9 -0
- data/.vimspell.utf8.add.spl +0 -0
- data/README.rdoc +57 -27
- data/Rakefile +10 -0
- data/VERSION.yml +3 -3
- data/bin/git-topic-completion +58 -0
- data/lib/core_ext.rb +74 -12
- data/lib/git_topic.rb +145 -12
- data/lib/git_topic/cli.rb +105 -13
- data/lib/git_topic/comment.rb +273 -0
- data/lib/git_topic/git.rb +66 -3
- data/lib/git_topic/naming.rb +26 -5
- data/share/completion.bash +28 -0
- data/spec/bash_completion.rb +2 -0
- data/spec/comment_spec.rb +396 -0
- data/spec/git_topic_accept_spec.rb +78 -0
- data/spec/git_topic_comment_spec.rb +393 -0
- data/spec/git_topic_comments_spec.rb +47 -0
- data/spec/git_topic_done_spec.rb +94 -0
- data/spec/git_topic_install_aliases_spec.rb +32 -0
- data/spec/git_topic_reject_spec.rb +112 -0
- data/spec/git_topic_review_spec.rb +115 -0
- data/spec/git_topic_status_spec.rb +63 -0
- data/spec/git_topic_work_on_spec.rb +121 -0
- data/spec/spec_helper.rb +136 -0
- metadata +34 -11
- data/git-topic +0 -13
- data/git-topic.gemspec +0 -190
- data/spec/git_topic_spec.rb +0 -502
data/spec/git_topic_spec.rb
DELETED
@@ -1,502 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
require 'fileutils'
|
4
|
-
|
5
|
-
|
6
|
-
describe GitTopic do
|
7
|
-
|
8
|
-
before( :all ) do
|
9
|
-
@starting_dir = Dir.pwd
|
10
|
-
@user = ENV['USER'] || `whoami`
|
11
|
-
end
|
12
|
-
|
13
|
-
before( :each ) do
|
14
|
-
# setup the directories
|
15
|
-
FileUtils.rm_rf './tmp'
|
16
|
-
FileUtils.mkdir './tmp'
|
17
|
-
|
18
|
-
# Copy our repos into tmp
|
19
|
-
%w(fresh in-progress).each do |d|
|
20
|
-
FileUtils.mkdir "./tmp/#{d}"
|
21
|
-
FileUtils.cp_r "spec/template/#{d}", "./tmp/#{d}/.git"
|
22
|
-
end
|
23
|
-
FileUtils.cp_r "spec/template/origin", './tmp'
|
24
|
-
FileUtils.cp_r "spec/template/origin-fresh", './tmp'
|
25
|
-
|
26
|
-
%w(origin origin-fresh fresh in-progress).each do |repo|
|
27
|
-
# set template branches to their proper name (i.e. matching @user)
|
28
|
-
Dir.chdir "./tmp/#{repo}"
|
29
|
-
git_branches.each do |orig_name|
|
30
|
-
new_name = orig_name.gsub( 'USER', @user )
|
31
|
-
system(
|
32
|
-
"git branch -m #{orig_name} #{new_name}"
|
33
|
-
) unless orig_name == new_name
|
34
|
-
system "git fetch --prune > /dev/null 2> /dev/null"
|
35
|
-
end
|
36
|
-
Dir.chdir @starting_dir
|
37
|
-
end
|
38
|
-
Dir.chdir './tmp'
|
39
|
-
|
40
|
-
# capture output
|
41
|
-
@output = ''
|
42
|
-
@err = ''
|
43
|
-
$stdout.stub!( :write ) { |*args| @output.<<( *args )}
|
44
|
-
$stderr.stub!( :write ) { |*args| @err.<<( *args )}
|
45
|
-
end
|
46
|
-
|
47
|
-
after( :each ) { Dir.chdir @starting_dir }
|
48
|
-
|
49
|
-
|
50
|
-
# helpers # {{{
|
51
|
-
|
52
|
-
def use_repo( repo )
|
53
|
-
Dir.chdir( repo )
|
54
|
-
# Exit if e.g. GIT_DIR is set
|
55
|
-
raise "Spec error" unless `git rev-parse --git-dir`.chomp == '.git'
|
56
|
-
end
|
57
|
-
|
58
|
-
|
59
|
-
def git_branch
|
60
|
-
all_branches = `git branch --no-color`.split( "\n" )
|
61
|
-
current_branch = all_branches.find{|b| b =~ /^\*/}
|
62
|
-
|
63
|
-
current_branch[ 2..-1 ] unless current_branch.nil?
|
64
|
-
end
|
65
|
-
|
66
|
-
def git_head
|
67
|
-
`git rev-parse HEAD`.chomp
|
68
|
-
end
|
69
|
-
|
70
|
-
def git_origin_master
|
71
|
-
`git rev-parse origin/master`.chomp
|
72
|
-
end
|
73
|
-
|
74
|
-
def git_config( key )
|
75
|
-
`git config #{key}`.chomp
|
76
|
-
end
|
77
|
-
|
78
|
-
def git_branch_merge
|
79
|
-
git_config "branch.#{git_branch}.merge"
|
80
|
-
end
|
81
|
-
|
82
|
-
def git_branch_remote
|
83
|
-
git_config "branch.#{git_branch}.remote"
|
84
|
-
end
|
85
|
-
|
86
|
-
def git_branches
|
87
|
-
`git branch --no-color`.split( "\n" ).map do |bn|
|
88
|
-
bn.gsub /^\*?\s*/, ''
|
89
|
-
end
|
90
|
-
end
|
91
|
-
|
92
|
-
def git_remote_branches
|
93
|
-
`git branch -r --no-color`.split( "\n" ).map do |bn|
|
94
|
-
bn.gsub! %r{^\s*origin/}, ''
|
95
|
-
bn.gsub! %r{ ->.*$}, ''
|
96
|
-
bn
|
97
|
-
end
|
98
|
-
end
|
99
|
-
|
100
|
-
# }}}
|
101
|
-
|
102
|
-
describe "#work_on" do
|
103
|
-
|
104
|
-
share_examples_for "#work_on general cases" do
|
105
|
-
|
106
|
-
it "
|
107
|
-
should trim namespaces from args and output a warning
|
108
|
-
".oneline do
|
109
|
-
|
110
|
-
git_branch.should_not == "wip/davidjh/topic"
|
111
|
-
GitTopic.work_on "wip/#{@user}/topic"
|
112
|
-
git_branch.should == "wip/davidjh/topic"
|
113
|
-
end
|
114
|
-
|
115
|
-
end
|
116
|
-
|
117
|
-
describe "in fresh" do
|
118
|
-
before( :each ) { use_repo( 'fresh' )}
|
119
|
-
after( :each ) { Dir.chdir( '..' )}
|
120
|
-
|
121
|
-
it_should_behave_like "#work_on general cases"
|
122
|
-
|
123
|
-
it "
|
124
|
-
should create (and switch to) a new branch with a name that matches the
|
125
|
-
given topic, in the wip namespace. A remote tracking branch should also
|
126
|
-
be set up.
|
127
|
-
".oneline do
|
128
|
-
|
129
|
-
GitTopic.work_on( 'topic' )
|
130
|
-
git_branch.should == "wip/#{@user}/topic"
|
131
|
-
git_branch_remote.should == 'origin'
|
132
|
-
git_branch_merge.should == "refs/heads/wip/#{@user}/topic"
|
133
|
-
end
|
134
|
-
|
135
|
-
it "should fail if no topic is given" do
|
136
|
-
lambda { GitTopic.work_on( nil )}.should raise_error
|
137
|
-
end
|
138
|
-
|
139
|
-
end
|
140
|
-
|
141
|
-
describe "in in-progress" do
|
142
|
-
|
143
|
-
before( :each ) { use_repo( 'in-progress' )}
|
144
|
-
after( :each ) { Dir.chdir( '..' )}
|
145
|
-
|
146
|
-
it_should_behave_like "#work_on general cases"
|
147
|
-
|
148
|
-
it "should switch to (rather than create) an existing topic branch" do
|
149
|
-
git_branches.should include( "wip/#{@user}/zombie-basic" )
|
150
|
-
lambda{ GitTopic.work_on 'zombie-basic' }.should_not raise_error
|
151
|
-
|
152
|
-
git_branch.should == "wip/#{@user}/zombie-basic"
|
153
|
-
end
|
154
|
-
|
155
|
-
it "
|
156
|
-
should use (and then destroy) the rejected branch for the topic, if one
|
157
|
-
exists
|
158
|
-
".oneline do
|
159
|
-
|
160
|
-
git_remote_branches.should include( "rejected/#{@user}/krakens" )
|
161
|
-
GitTopic.work_on 'krakens'
|
162
|
-
git_branch.should == "wip/#{@user}/krakens"
|
163
|
-
git_remote_branches.should_not include( "rejected/#{@user}/krakens" )
|
164
|
-
git_remote_branches.should include( "wip/#{@user}/krakens" )
|
165
|
-
git_head.should == '44ffd9c9c8b52b201659e3ad318cdad6ec836b46'
|
166
|
-
end
|
167
|
-
|
168
|
-
it "
|
169
|
-
should use (and then destroy) the review branch for the topic, if one
|
170
|
-
exists
|
171
|
-
".oneline do
|
172
|
-
|
173
|
-
git_remote_branches.should include( "rejected/#{@user}/krakens" )
|
174
|
-
GitTopic.work_on 'krakens'
|
175
|
-
git_branch.should == "wip/#{@user}/krakens"
|
176
|
-
git_remote_branches.should_not include( "rejected/#{@user}/krakens" )
|
177
|
-
git_remote_branches.should include( "wip/#{@user}/krakens" )
|
178
|
-
git_head.should == '44ffd9c9c8b52b201659e3ad318cdad6ec836b46'
|
179
|
-
end
|
180
|
-
|
181
|
-
end
|
182
|
-
|
183
|
-
pending "with no origin"
|
184
|
-
|
185
|
-
end
|
186
|
-
|
187
|
-
describe "#done" do
|
188
|
-
|
189
|
-
describe "in in-progress" do
|
190
|
-
|
191
|
-
before( :each ) { use_repo 'in-progress' }
|
192
|
-
after( :each ) { Dir.chdir '..' }
|
193
|
-
|
194
|
-
describe "without an argument" do
|
195
|
-
|
196
|
-
it "should fail if the working tree is dirty" do
|
197
|
-
GitTopic.work_on 'zombie-basic'
|
198
|
-
File.open( 'foo', 'w' ){|f| f.puts "some content" }
|
199
|
-
system "git add -N foo"
|
200
|
-
|
201
|
-
lambda{ GitTopic.done }.should raise_error
|
202
|
-
end
|
203
|
-
|
204
|
-
it "should fail if not on a wip branch" do
|
205
|
-
`git checkout master > /dev/null 2> /dev/null`
|
206
|
-
lambda{ GitTopic.done }.should raise_error
|
207
|
-
end
|
208
|
-
|
209
|
-
it "
|
210
|
-
should push the wip branch to origin in the review namespace, delete the
|
211
|
-
local branch, and leave the user on master
|
212
|
-
".oneline do
|
213
|
-
|
214
|
-
git_branches.should include( "wip/#{@user}/zombie-basic" )
|
215
|
-
git_remote_branches.should_not include( "review/#{@user}/zombie-basic" )
|
216
|
-
GitTopic.work_on 'zombie-basic'
|
217
|
-
GitTopic.done
|
218
|
-
|
219
|
-
git_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
220
|
-
git_remote_branches.should include( "review/#{@user}/zombie-basic" )
|
221
|
-
git_remote_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
222
|
-
git_branch.should == 'master'
|
223
|
-
end
|
224
|
-
end
|
225
|
-
|
226
|
-
describe "with an argument" do
|
227
|
-
|
228
|
-
it "should fail for non-wip branch arguments" do
|
229
|
-
git_branches.should_not include( "wip/#{@user}/invalid-branch" )
|
230
|
-
lambda{ GitTopic.done( 'invalid-branch' )}.should raise_error
|
231
|
-
end
|
232
|
-
|
233
|
-
it "should succeed for superfluous wip-branch arguments" do
|
234
|
-
git_branches.should include( "wip/#{@user}/zombie-basic" )
|
235
|
-
git_remote_branches.should_not include( "review/#{@user}/zombie-basic" )
|
236
|
-
GitTopic.work_on 'zombie-basic'
|
237
|
-
GitTopic.done( 'zombie-basic' )
|
238
|
-
|
239
|
-
git_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
240
|
-
git_remote_branches.should include( "review/#{@user}/zombie-basic" )
|
241
|
-
git_remote_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
242
|
-
git_branch.should == 'master'
|
243
|
-
end
|
244
|
-
|
245
|
-
it "
|
246
|
-
should succeed for wip-branch arguments, and leave the user on the
|
247
|
-
same branch
|
248
|
-
".oneline do
|
249
|
-
git_branches.should include( "wip/#{@user}/pirates-advanced" )
|
250
|
-
git_branches.should include( "wip/#{@user}/zombie-basic" )
|
251
|
-
git_remote_branches.should_not include( "review/#{@user}/zombie-basic" )
|
252
|
-
|
253
|
-
GitTopic.work_on 'pirates-advanced'
|
254
|
-
GitTopic.done 'zombie-basic'
|
255
|
-
|
256
|
-
git_branch.should == "wip/#{@user}/pirates-advanced"
|
257
|
-
git_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
258
|
-
git_remote_branches.should include( "review/#{@user}/zombie-basic" )
|
259
|
-
git_remote_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
260
|
-
end
|
261
|
-
|
262
|
-
it "should succeed for fully-qualified wip-branch arguments" do
|
263
|
-
git_branches.should include( "wip/#{@user}/zombie-basic" )
|
264
|
-
git_remote_branches.should_not include( "review/#{@user}/zombie-basic" )
|
265
|
-
GitTopic.done( "wip/#{@user}/zombie-basic" )
|
266
|
-
|
267
|
-
git_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
268
|
-
git_remote_branches.should include( "review/#{@user}/zombie-basic" )
|
269
|
-
git_remote_branches.should_not include( "wip/#{@user}/zombie-basic" )
|
270
|
-
git_branch.should == 'master'
|
271
|
-
end
|
272
|
-
end
|
273
|
-
end
|
274
|
-
end
|
275
|
-
|
276
|
-
describe "#status" do
|
277
|
-
|
278
|
-
describe "with pending review branches" do
|
279
|
-
|
280
|
-
before( :each ) { use_repo 'in-progress' }
|
281
|
-
after( :each ) { Dir.chdir '..' }
|
282
|
-
|
283
|
-
|
284
|
-
it "should not show my review branches, but it should show others'" do
|
285
|
-
git_remote_branches.should include 'review/davidjh/pirates'
|
286
|
-
|
287
|
-
GitTopic.status
|
288
|
-
@output.should_not be_nil
|
289
|
-
|
290
|
-
@output.should_not =~ /^#\s*pirates\s*$/m
|
291
|
-
@output.should =~ /^#\s*ninja-basic\s*$/m
|
292
|
-
@output.should =~ /^#\s*zombie-basic\s*$/m
|
293
|
-
end
|
294
|
-
|
295
|
-
it "should show my rejected topics" do
|
296
|
-
git_remote_branches.should include 'rejected/davidjh/krakens'
|
297
|
-
GitTopic.status
|
298
|
-
@output.should_not be_nil
|
299
|
-
|
300
|
-
@output.should =~ /^#\s*krakens\s*$/m
|
301
|
-
end
|
302
|
-
|
303
|
-
end
|
304
|
-
|
305
|
-
describe "passed the --prepended flag" do
|
306
|
-
before( :each ) { use_repo 'in-progress' }
|
307
|
-
after( :each ) { Dir.chdir '..' }
|
308
|
-
|
309
|
-
it "should invoke git status before producing its output" do
|
310
|
-
GitTopic.status( :prepended => true )
|
311
|
-
@output.should_not be_nil
|
312
|
-
@output.should =~ /# On branch master/
|
313
|
-
end
|
314
|
-
end
|
315
|
-
|
316
|
-
pending "with useless args"
|
317
|
-
|
318
|
-
end
|
319
|
-
|
320
|
-
describe "#review" do
|
321
|
-
|
322
|
-
describe "with no review branches" do
|
323
|
-
before( :each ) { use_repo 'fresh' }
|
324
|
-
after( :each ) { Dir.chdir '..' }
|
325
|
-
|
326
|
-
it "should report that there is nothing to do" do
|
327
|
-
git_remote_branches.each do |b|
|
328
|
-
b.should_not =~ /review/
|
329
|
-
end
|
330
|
-
|
331
|
-
GitTopic.review
|
332
|
-
@output.should =~ /nothing to review/
|
333
|
-
end
|
334
|
-
end
|
335
|
-
|
336
|
-
describe "with some review branches" do
|
337
|
-
before( :each ) { use_repo 'in-progress' }
|
338
|
-
after( :each ) { Dir.chdir '..' }
|
339
|
-
|
340
|
-
it "
|
341
|
-
should create a local tracking branch for the oldest remote review
|
342
|
-
branch if none was specified
|
343
|
-
" do
|
344
|
-
|
345
|
-
git_remote_branches.should include 'review/user24601/zombie-basic'
|
346
|
-
GitTopic.review
|
347
|
-
git_branch.should == 'review/user24601/zombie-basic'
|
348
|
-
git_branch_remote.should == 'origin'
|
349
|
-
git_branch_merge.should == 'refs/heads/review/user24601/zombie-basic'
|
350
|
-
end
|
351
|
-
|
352
|
-
it "should create a local tracking branch for the specified topic" do
|
353
|
-
git_remote_branches.should include 'review/user24601/ninja-basic'
|
354
|
-
GitTopic.review( 'user24601/ninja-basic' )
|
355
|
-
git_branch.should == 'review/user24601/ninja-basic'
|
356
|
-
git_branch_remote.should == 'origin'
|
357
|
-
git_branch_merge.should == 'refs/heads/review/user24601/ninja-basic'
|
358
|
-
end
|
359
|
-
|
360
|
-
it "
|
361
|
-
should accept only a topic arg (vice <user>/<topic>) when the topic is
|
362
|
-
unambiguous.
|
363
|
-
".oneline do
|
364
|
-
git_remote_branches.should include 'review/user24601/ninja-basic'
|
365
|
-
GitTopic.review( 'ninja-basic' )
|
366
|
-
git_branch.should == 'review/user24601/ninja-basic'
|
367
|
-
git_branch_remote.should == 'origin'
|
368
|
-
git_branch_merge.should == 'refs/heads/review/user24601/ninja-basic'
|
369
|
-
end
|
370
|
-
|
371
|
-
it "should error if an illegal topic is specified" do
|
372
|
-
lambda{ GitTopic.review( 'fakeuser/faketopic' )}.should raise_error
|
373
|
-
end
|
374
|
-
end
|
375
|
-
|
376
|
-
pending "with non-branch arg"
|
377
|
-
pending "with non-review-branch arg"
|
378
|
-
pending "with my-review-branch arg"
|
379
|
-
|
380
|
-
end
|
381
|
-
|
382
|
-
describe "#accept" do
|
383
|
-
|
384
|
-
describe "while on a review branch" do
|
385
|
-
before( :each ) do
|
386
|
-
use_repo 'in-progress'
|
387
|
-
GitTopic.review 'user24601/zombie-basic'
|
388
|
-
end
|
389
|
-
after( :each ) { Dir.chdir '..' }
|
390
|
-
|
391
|
-
describe "with no specified argument" do
|
392
|
-
it "
|
393
|
-
should merge to master, push master and destroy the local and remote
|
394
|
-
branches when the merge is a fast-forward merge
|
395
|
-
".oneline do
|
396
|
-
|
397
|
-
git_branch.should == 'review/user24601/zombie-basic'
|
398
|
-
GitTopic.accept
|
399
|
-
git_branch.should == 'master'
|
400
|
-
git_branches.should_not include( 'review/user24601/zombie-basic' )
|
401
|
-
git_remote_branches.should_not include( 'review/user24601/zombie-basic' )
|
402
|
-
|
403
|
-
git_head.should == '0ce06c616769768f09f5e629cfcc68eabe3dee81'
|
404
|
-
git_origin_master.should == '0ce06c616769768f09f5e629cfcc68eabe3dee81'
|
405
|
-
end
|
406
|
-
end
|
407
|
-
end
|
408
|
-
|
409
|
-
describe "while on a review branch that does not FF" do
|
410
|
-
before( :each ) do
|
411
|
-
use_repo 'in-progress'
|
412
|
-
system "
|
413
|
-
git checkout master > /dev/null 2> /dev/null &&
|
414
|
-
git merge origin/wip/prevent-ff > /dev/null 2> /dev/null
|
415
|
-
"
|
416
|
-
@original_git_Head = git_head
|
417
|
-
GitTopic.review 'user24601/zombie-basic'
|
418
|
-
end
|
419
|
-
after( :each ) { Dir.chdir '..' }
|
420
|
-
|
421
|
-
it "should refuse to accept the review branch" do
|
422
|
-
git_branch.should == 'review/user24601/zombie-basic'
|
423
|
-
lambda{ GitTopic.accept }.should raise_error
|
424
|
-
git_branch.should == 'review/user24601/zombie-basic'
|
425
|
-
git_remote_branches.should include( 'review/user24601/zombie-basic' )
|
426
|
-
|
427
|
-
system "git checkout master > /dev/null 2> /dev/null"
|
428
|
-
git_head.should == @original_git_Head
|
429
|
-
end
|
430
|
-
end
|
431
|
-
|
432
|
-
describe "while not on a review branch" do
|
433
|
-
before( :each ) { use_repo 'in-progress' }
|
434
|
-
after( :each ) { Dir.chdir '..' }
|
435
|
-
|
436
|
-
it "should fail" do
|
437
|
-
lambda{ GitTopic.accept }.should raise_error
|
438
|
-
end
|
439
|
-
end
|
440
|
-
|
441
|
-
pending "with an arg"
|
442
|
-
|
443
|
-
end
|
444
|
-
|
445
|
-
describe "#reject" do
|
446
|
-
|
447
|
-
describe "while on a review branch" do
|
448
|
-
before( :each ) do
|
449
|
-
use_repo 'in-progress'
|
450
|
-
GitTopic.review 'user24601/zombie-basic'
|
451
|
-
end
|
452
|
-
after( :each ) { Dir.chdir '..' }
|
453
|
-
|
454
|
-
describe "with no specified argument" do
|
455
|
-
it "
|
456
|
-
should move branch to the rejected namespace and destroy the local and
|
457
|
-
remote review branches
|
458
|
-
".oneline do
|
459
|
-
|
460
|
-
git_branch.should == 'review/user24601/zombie-basic'
|
461
|
-
GitTopic.reject
|
462
|
-
git_branch.should == 'master'
|
463
|
-
git_branches.should_not include( 'review/user24601/zombie-basic' )
|
464
|
-
git_remote_branches.should_not include( 'review/user24601/zombie-basic' )
|
465
|
-
git_remote_branches.should include( 'rejected/user24601/zombie-basic' )
|
466
|
-
end
|
467
|
-
end
|
468
|
-
end
|
469
|
-
|
470
|
-
describe "while not on a review branch" do
|
471
|
-
before( :each ) { use_repo 'in-progress' }
|
472
|
-
after( :each ) { Dir.chdir '..' }
|
473
|
-
|
474
|
-
it "should fail" do
|
475
|
-
lambda{ GitTopic.reject }.should raise_error
|
476
|
-
end
|
477
|
-
end
|
478
|
-
|
479
|
-
pending "with an arg"
|
480
|
-
|
481
|
-
end
|
482
|
-
|
483
|
-
|
484
|
-
describe "#install_aliases" do
|
485
|
-
it "should install aliases" do
|
486
|
-
GitTopic.install_aliases :local => true
|
487
|
-
git_config( 'alias.work-on' ).should == 'topic work-on'
|
488
|
-
git_config( 'alias.done' ).should == 'topic done'
|
489
|
-
git_config( 'alias.review' ).should == 'topic review'
|
490
|
-
git_config( 'alias.accept' ).should == 'topic accept'
|
491
|
-
git_config( 'alias.reject' ).should == 'topic reject'
|
492
|
-
|
493
|
-
git_config( 'alias.w' ).should == 'topic work-on'
|
494
|
-
git_config( 'alias.r' ).should == 'topic review'
|
495
|
-
git_config( 'alias.st' ).should == 'topic status --prepended'
|
496
|
-
end
|
497
|
-
|
498
|
-
pending "with an arg"
|
499
|
-
|
500
|
-
end
|
501
|
-
end
|
502
|
-
|