transpec 0.1.3 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +35 -3
- data/README.md.erb +35 -3
- data/lib/transpec/cli.rb +50 -4
- data/lib/transpec/commit_message.rb +25 -0
- data/lib/transpec/git.rb +18 -0
- data/lib/transpec/record.rb +28 -0
- data/lib/transpec/report.rb +109 -0
- data/lib/transpec/rewriter.rb +17 -8
- data/lib/transpec/syntax.rb +25 -22
- data/lib/transpec/syntax/be_close.rb +6 -0
- data/lib/transpec/syntax/double.rb +5 -0
- data/lib/transpec/syntax/matcher.rb +17 -1
- data/lib/transpec/syntax/method_stub.rb +40 -8
- data/lib/transpec/syntax/raise_error.rb +17 -0
- data/lib/transpec/syntax/send_node_syntax.rb +4 -0
- data/lib/transpec/syntax/should.rb +23 -2
- data/lib/transpec/syntax/should_receive.rb +54 -2
- data/lib/transpec/version.rb +2 -2
- data/spec/.rubocop.yml +1 -1
- data/spec/support/shared_context.rb +10 -0
- data/spec/transpec/cli_spec.rb +76 -29
- data/spec/transpec/commit_message_spec.rb +63 -0
- data/spec/transpec/configuration_spec.rb +1 -1
- data/spec/transpec/git_spec.rb +114 -38
- data/spec/transpec/record_spec.rb +18 -0
- data/spec/transpec/report_spec.rb +89 -0
- data/spec/transpec/rewriter_spec.rb +5 -0
- data/spec/transpec/syntax/be_close_spec.rb +10 -1
- data/spec/transpec/syntax/double_spec.rb +10 -0
- data/spec/transpec/syntax/matcher_spec.rb +31 -0
- data/spec/transpec/syntax/method_stub_spec.rb +53 -44
- data/spec/transpec/syntax/raise_error_spec.rb +64 -24
- data/spec/transpec/syntax/should_receive_spec.rb +67 -7
- data/spec/transpec/syntax/should_spec.rb +26 -0
- data/tasks/test.rake +27 -12
- metadata +11 -2
@@ -20,16 +20,18 @@ module Transpec
|
|
20
20
|
fail 'No raise_error node is found!'
|
21
21
|
end
|
22
22
|
|
23
|
+
let(:record) { raise_error_object.report.records.first }
|
24
|
+
|
23
25
|
describe '#remove_error_specification_with_negative_expectation!' do
|
24
26
|
before do
|
25
27
|
raise_error_object.remove_error_specification_with_negative_expectation!
|
26
28
|
end
|
27
29
|
|
28
|
-
context 'when it is `lambda {
|
30
|
+
context 'when it is `lambda { }.should raise_error(SpecificErrorClass)` form' do
|
29
31
|
let(:source) do
|
30
32
|
<<-END
|
31
|
-
it 'raises
|
32
|
-
lambda { do_something }.should raise_error(
|
33
|
+
it 'raises SpecificErrorClass' do
|
34
|
+
lambda { do_something }.should raise_error(SpecificErrorClass)
|
33
35
|
end
|
34
36
|
END
|
35
37
|
end
|
@@ -37,13 +39,17 @@ module Transpec
|
|
37
39
|
it 'does nothing' do
|
38
40
|
rewritten_source.should == source
|
39
41
|
end
|
42
|
+
|
43
|
+
it 'reports nothing' do
|
44
|
+
raise_error_object.report.records.should be_empty
|
45
|
+
end
|
40
46
|
end
|
41
47
|
|
42
|
-
context 'when it is `expect {
|
48
|
+
context 'when it is `expect { }.to raise_error(SpecificErrorClass)` form' do
|
43
49
|
let(:source) do
|
44
50
|
<<-END
|
45
|
-
it 'raises
|
46
|
-
expect { do_something }.to raise_error(
|
51
|
+
it 'raises SpecificErrorClass' do
|
52
|
+
expect { do_something }.to raise_error(SpecificErrorClass)
|
47
53
|
end
|
48
54
|
END
|
49
55
|
end
|
@@ -51,13 +57,17 @@ module Transpec
|
|
51
57
|
it 'does nothing' do
|
52
58
|
rewritten_source.should == source
|
53
59
|
end
|
60
|
+
|
61
|
+
it 'reports nothing' do
|
62
|
+
raise_error_object.report.records.should be_empty
|
63
|
+
end
|
54
64
|
end
|
55
65
|
|
56
|
-
context 'when it is `lambda {
|
66
|
+
context 'when it is `lambda { }.should_not raise_error(SpecificErrorClass)` form' do
|
57
67
|
let(:source) do
|
58
68
|
<<-END
|
59
69
|
it 'does not raise error' do
|
60
|
-
lambda { do_something }.should_not raise_error(
|
70
|
+
lambda { do_something }.should_not raise_error(SpecificErrorClass)
|
61
71
|
end
|
62
72
|
END
|
63
73
|
end
|
@@ -70,16 +80,22 @@ module Transpec
|
|
70
80
|
END
|
71
81
|
end
|
72
82
|
|
73
|
-
it 'converts into `lambda {
|
83
|
+
it 'converts into `lambda { }.should_not raise_error` form' do
|
74
84
|
rewritten_source.should == expected_source
|
75
85
|
end
|
86
|
+
|
87
|
+
it 'adds record ' +
|
88
|
+
'"`expect { }.not_to raise_error(SpecificErrorClass)` -> `expect { }.not_to raise_error`\"' do
|
89
|
+
record.original_syntax.should == 'expect { }.not_to raise_error(SpecificErrorClass)'
|
90
|
+
record.converted_syntax.should == 'expect { }.not_to raise_error'
|
91
|
+
end
|
76
92
|
end
|
77
93
|
|
78
|
-
context 'when it is `expect {
|
94
|
+
context 'when it is `expect { }.not_to raise_error(SpecificErrorClass)` form' do
|
79
95
|
let(:source) do
|
80
96
|
<<-END
|
81
97
|
it 'does not raise error' do
|
82
|
-
expect { do_something }.not_to raise_error(
|
98
|
+
expect { do_something }.not_to raise_error(SpecificErrorClass)
|
83
99
|
end
|
84
100
|
END
|
85
101
|
end
|
@@ -92,16 +108,16 @@ module Transpec
|
|
92
108
|
END
|
93
109
|
end
|
94
110
|
|
95
|
-
it 'converts into `expect {
|
111
|
+
it 'converts into `expect { }.not_to raise_error` form' do
|
96
112
|
rewritten_source.should == expected_source
|
97
113
|
end
|
98
114
|
end
|
99
115
|
|
100
|
-
context 'when it is `expect {
|
116
|
+
context 'when it is `expect { }.to_not raise_error(SpecificErrorClass)` form' do
|
101
117
|
let(:source) do
|
102
118
|
<<-END
|
103
119
|
it 'does not raise error' do
|
104
|
-
expect { do_something }.to_not raise_error(
|
120
|
+
expect { do_something }.to_not raise_error(SpecificErrorClass)
|
105
121
|
end
|
106
122
|
END
|
107
123
|
end
|
@@ -114,16 +130,22 @@ module Transpec
|
|
114
130
|
END
|
115
131
|
end
|
116
132
|
|
117
|
-
it 'converts into `expect {
|
133
|
+
it 'converts into `expect { }.to_not raise_error` form' do
|
118
134
|
rewritten_source.should == expected_source
|
119
135
|
end
|
136
|
+
|
137
|
+
it 'adds record ' +
|
138
|
+
'"`expect { }.not_to raise_error(SpecificErrorClass)` -> `expect { }.not_to raise_error`\"' do
|
139
|
+
record.original_syntax.should == 'expect { }.not_to raise_error(SpecificErrorClass)'
|
140
|
+
record.converted_syntax.should == 'expect { }.not_to raise_error'
|
141
|
+
end
|
120
142
|
end
|
121
143
|
|
122
|
-
context 'when it is `expect {
|
144
|
+
context 'when it is `expect { }.not_to raise_error SpecificErrorClass` form' do
|
123
145
|
let(:source) do
|
124
146
|
<<-END
|
125
147
|
it 'does not raise error' do
|
126
|
-
expect { do_something }.not_to raise_error
|
148
|
+
expect { do_something }.not_to raise_error SpecificErrorClass
|
127
149
|
end
|
128
150
|
END
|
129
151
|
end
|
@@ -136,16 +158,22 @@ module Transpec
|
|
136
158
|
END
|
137
159
|
end
|
138
160
|
|
139
|
-
it 'converts into `expect {
|
161
|
+
it 'converts into `expect { }.not_to raise_error` form' do
|
140
162
|
rewritten_source.should == expected_source
|
141
163
|
end
|
164
|
+
|
165
|
+
it 'adds record ' +
|
166
|
+
'"`expect { }.not_to raise_error(SpecificErrorClass)` -> `expect { }.not_to raise_error`\"' do
|
167
|
+
record.original_syntax.should == 'expect { }.not_to raise_error(SpecificErrorClass)'
|
168
|
+
record.converted_syntax.should == 'expect { }.not_to raise_error'
|
169
|
+
end
|
142
170
|
end
|
143
171
|
|
144
|
-
context
|
172
|
+
context 'when it is `expect { }.not_to raise_error(SpecificErrorClass, message)` form' do
|
145
173
|
let(:source) do
|
146
174
|
<<-END
|
147
175
|
it 'does not raise error' do
|
148
|
-
expect { do_something }.not_to raise_error(
|
176
|
+
expect { do_something }.not_to raise_error(SpecificErrorClass, message)
|
149
177
|
end
|
150
178
|
END
|
151
179
|
end
|
@@ -158,16 +186,22 @@ module Transpec
|
|
158
186
|
END
|
159
187
|
end
|
160
188
|
|
161
|
-
it 'converts into `expect {
|
189
|
+
it 'converts into `expect { }.not_to raise_error` form' do
|
162
190
|
rewritten_source.should == expected_source
|
163
191
|
end
|
192
|
+
|
193
|
+
it 'adds record ' +
|
194
|
+
'"`expect { }.not_to raise_error(SpecificErrorClass, message)` -> `expect { }.not_to raise_error`"' do
|
195
|
+
record.original_syntax.should == 'expect { }.not_to raise_error(SpecificErrorClass, message)'
|
196
|
+
record.converted_syntax.should == 'expect { }.not_to raise_error'
|
197
|
+
end
|
164
198
|
end
|
165
199
|
|
166
|
-
context
|
200
|
+
context 'when it is `expect { }.not_to raise_error(message)` form' do
|
167
201
|
let(:source) do
|
168
202
|
<<-END
|
169
203
|
it 'does not raise error' do
|
170
|
-
expect { do_something }.not_to raise_error(
|
204
|
+
expect { do_something }.not_to raise_error(message)
|
171
205
|
end
|
172
206
|
END
|
173
207
|
end
|
@@ -180,9 +214,15 @@ module Transpec
|
|
180
214
|
END
|
181
215
|
end
|
182
216
|
|
183
|
-
it 'converts into `expect {
|
217
|
+
it 'converts into `expect { }.not_to raise_error` form' do
|
184
218
|
rewritten_source.should == expected_source
|
185
219
|
end
|
220
|
+
|
221
|
+
it 'adds record ' +
|
222
|
+
'"`expect { }.not_to raise_error(message)` -> `expect { }.not_to raise_error`"' do
|
223
|
+
record.original_syntax.should == 'expect { }.not_to raise_error(message)'
|
224
|
+
record.converted_syntax.should == 'expect { }.not_to raise_error'
|
225
|
+
end
|
186
226
|
end
|
187
227
|
end
|
188
228
|
end
|
@@ -20,6 +20,8 @@ module Transpec
|
|
20
20
|
fail 'No should_receive node is found!'
|
21
21
|
end
|
22
22
|
|
23
|
+
let(:record) { should_receive_object.report.records.first }
|
24
|
+
|
23
25
|
before do
|
24
26
|
should_receive_object.context.stub(:in_example_group?).and_return(true)
|
25
27
|
end
|
@@ -46,6 +48,12 @@ module Transpec
|
|
46
48
|
should_receive_object.expectize!
|
47
49
|
rewritten_source.should == expected_source
|
48
50
|
end
|
51
|
+
|
52
|
+
it 'adds record "`obj.should_receive(:message)` -> `expect(obj).to receive(:message)`"' do
|
53
|
+
should_receive_object.expectize!
|
54
|
+
record.original_syntax.should == 'obj.should_receive(:message)'
|
55
|
+
record.converted_syntax.should == 'expect(obj).to receive(:message)'
|
56
|
+
end
|
49
57
|
end
|
50
58
|
|
51
59
|
context 'when it is `subject.should_not_receive(:method)` form' do
|
@@ -70,6 +78,13 @@ module Transpec
|
|
70
78
|
rewritten_source.should == expected_source
|
71
79
|
end
|
72
80
|
|
81
|
+
it 'adds record ' +
|
82
|
+
'"`obj.should_not_receive(:message)` -> `expect(obj).not_to receive(:message)`"' do
|
83
|
+
should_receive_object.expectize!
|
84
|
+
record.original_syntax.should == 'obj.should_not_receive(:message)'
|
85
|
+
record.converted_syntax.should == 'expect(obj).not_to receive(:message)'
|
86
|
+
end
|
87
|
+
|
73
88
|
context 'and "to_not" is passed as negative form' do
|
74
89
|
let(:expected_source) do
|
75
90
|
<<-END
|
@@ -83,6 +98,13 @@ module Transpec
|
|
83
98
|
should_receive_object.expectize!('to_not')
|
84
99
|
rewritten_source.should == expected_source
|
85
100
|
end
|
101
|
+
|
102
|
+
it 'adds record ' +
|
103
|
+
'"`obj.should_not_receive(:message)` -> `expect(obj).to_not receive(:message)`"' do
|
104
|
+
should_receive_object.expectize!('to_not')
|
105
|
+
record.original_syntax.should == 'obj.should_not_receive(:message)'
|
106
|
+
record.converted_syntax.should == 'expect(obj).to_not receive(:message)'
|
107
|
+
end
|
86
108
|
end
|
87
109
|
end
|
88
110
|
|
@@ -281,6 +303,13 @@ module Transpec
|
|
281
303
|
should_receive_object.expectize!
|
282
304
|
rewritten_source.should == expected_source
|
283
305
|
end
|
306
|
+
|
307
|
+
it 'adds record "`SomeClass.any_instance.should_receive(:message)` ' +
|
308
|
+
'-> `expect_any_instance_of(SomeClass).to receive(:message)`"' do
|
309
|
+
should_receive_object.expectize!
|
310
|
+
record.original_syntax.should == 'SomeClass.any_instance.should_receive(:message)'
|
311
|
+
record.converted_syntax.should == 'expect_any_instance_of(SomeClass).to receive(:message)'
|
312
|
+
end
|
284
313
|
end
|
285
314
|
end
|
286
315
|
|
@@ -349,6 +378,10 @@ module Transpec
|
|
349
378
|
end
|
350
379
|
|
351
380
|
describe '#allowize_useless_expectation!' do
|
381
|
+
before do
|
382
|
+
should_receive_object.allowize_useless_expectation!
|
383
|
+
end
|
384
|
+
|
352
385
|
context 'when it is `subject.should_receive(:method).any_number_of_times` form' do
|
353
386
|
let(:source) do
|
354
387
|
<<-END
|
@@ -367,9 +400,14 @@ module Transpec
|
|
367
400
|
end
|
368
401
|
|
369
402
|
it 'converts into `allow(subject).to receive(:method)` form' do
|
370
|
-
should_receive_object.allowize_useless_expectation!
|
371
403
|
rewritten_source.should == expected_source
|
372
404
|
end
|
405
|
+
|
406
|
+
it 'adds record ' +
|
407
|
+
'"`obj.should_receive(:message).any_number_of_times` -> `allow(obj).to receive(:message)`"' do
|
408
|
+
record.original_syntax.should == 'obj.should_receive(:message).any_number_of_times'
|
409
|
+
record.converted_syntax.should == 'allow(obj).to receive(:message)'
|
410
|
+
end
|
373
411
|
end
|
374
412
|
|
375
413
|
context 'when it is `SomeClass.any_instance.should_receive(:method).any_number_of_times` form' do
|
@@ -390,9 +428,14 @@ module Transpec
|
|
390
428
|
end
|
391
429
|
|
392
430
|
it 'converts into `allow_any_instance_of(subject).to receive(:method)` form' do
|
393
|
-
should_receive_object.allowize_useless_expectation!
|
394
431
|
rewritten_source.should == expected_source
|
395
432
|
end
|
433
|
+
|
434
|
+
it 'adds record "`SomeClass.any_instance.should_receive(:message).any_number_of_times` ' +
|
435
|
+
'-> `allow_any_instance_of(SomeClass).to receive(:message)`"' do
|
436
|
+
record.original_syntax.should == 'SomeClass.any_instance.should_receive(:message).any_number_of_times'
|
437
|
+
record.converted_syntax.should == 'allow_any_instance_of(SomeClass).to receive(:message)'
|
438
|
+
end
|
396
439
|
end
|
397
440
|
|
398
441
|
context 'when it is `subject.should_receive(:method).at_least(0)` form' do
|
@@ -413,9 +456,14 @@ module Transpec
|
|
413
456
|
end
|
414
457
|
|
415
458
|
it 'converts into `allow(subject).to receive(:method)` form' do
|
416
|
-
should_receive_object.allowize_useless_expectation!
|
417
459
|
rewritten_source.should == expected_source
|
418
460
|
end
|
461
|
+
|
462
|
+
it 'adds record ' +
|
463
|
+
'"`obj.should_receive(:message).at_least(0)` -> `allow(obj).to receive(:message)`"' do
|
464
|
+
record.original_syntax.should == 'obj.should_receive(:message).at_least(0)'
|
465
|
+
record.converted_syntax.should == 'allow(obj).to receive(:message)'
|
466
|
+
end
|
419
467
|
end
|
420
468
|
|
421
469
|
context 'when it is `SomeClass.any_instance.should_receive(:method).at_least(0)` form' do
|
@@ -436,9 +484,14 @@ module Transpec
|
|
436
484
|
end
|
437
485
|
|
438
486
|
it 'converts into `allow_any_instance_of(subject).to receive(:method)` form' do
|
439
|
-
should_receive_object.allowize_useless_expectation!
|
440
487
|
rewritten_source.should == expected_source
|
441
488
|
end
|
489
|
+
|
490
|
+
it 'adds record "`SomeClass.any_instance.should_receive(:message).at_least(0)` ' +
|
491
|
+
'-> `allow_any_instance_of(SomeClass).to receive(:message)`"' do
|
492
|
+
record.original_syntax.should == 'SomeClass.any_instance.should_receive(:message).at_least(0)'
|
493
|
+
record.converted_syntax.should == 'allow_any_instance_of(SomeClass).to receive(:message)'
|
494
|
+
end
|
442
495
|
end
|
443
496
|
|
444
497
|
context 'when it is `subject.should_receive(:method)` form' do
|
@@ -451,13 +504,16 @@ module Transpec
|
|
451
504
|
end
|
452
505
|
|
453
506
|
it 'does nothing' do
|
454
|
-
should_receive_object.allowize_useless_expectation!
|
455
507
|
rewritten_source.should == source
|
456
508
|
end
|
457
509
|
end
|
458
510
|
end
|
459
511
|
|
460
512
|
describe '#stubize_useless_expectation!' do
|
513
|
+
before do
|
514
|
+
should_receive_object.stubize_useless_expectation!
|
515
|
+
end
|
516
|
+
|
461
517
|
context 'when it is `subject.should_receive(:method).any_number_of_times` form' do
|
462
518
|
let(:source) do
|
463
519
|
<<-END
|
@@ -476,9 +532,14 @@ module Transpec
|
|
476
532
|
end
|
477
533
|
|
478
534
|
it 'converts into `subject.stub(:method)` form' do
|
479
|
-
should_receive_object.stubize_useless_expectation!
|
480
535
|
rewritten_source.should == expected_source
|
481
536
|
end
|
537
|
+
|
538
|
+
it 'adds record ' +
|
539
|
+
'"`obj.should_receive(:message).any_number_of_times` -> `obj.stub(:message)`"' do
|
540
|
+
record.original_syntax.should == 'obj.should_receive(:message).any_number_of_times'
|
541
|
+
record.converted_syntax.should == 'obj.stub(:message)'
|
542
|
+
end
|
482
543
|
end
|
483
544
|
|
484
545
|
context 'when it is `subject.should_receive(:method)` form' do
|
@@ -491,7 +552,6 @@ module Transpec
|
|
491
552
|
end
|
492
553
|
|
493
554
|
it 'does nothing' do
|
494
|
-
should_receive_object.stubize_useless_expectation!
|
495
555
|
rewritten_source.should == source
|
496
556
|
end
|
497
557
|
end
|
@@ -9,6 +9,8 @@ module Transpec
|
|
9
9
|
include_context 'parsed objects'
|
10
10
|
include_context 'should object'
|
11
11
|
|
12
|
+
let(:record) { should_object.report.records.first }
|
13
|
+
|
12
14
|
before do
|
13
15
|
should_object.context.stub(:in_example_group?).and_return(true)
|
14
16
|
end
|
@@ -121,6 +123,12 @@ module Transpec
|
|
121
123
|
should_object.expectize!
|
122
124
|
rewritten_source.should == expected_source
|
123
125
|
end
|
126
|
+
|
127
|
+
it 'adds record "`obj.should` -> `expect(obj).to`"' do
|
128
|
+
should_object.expectize!
|
129
|
+
record.original_syntax.should == 'obj.should'
|
130
|
+
record.converted_syntax.should == 'expect(obj).to'
|
131
|
+
end
|
124
132
|
end
|
125
133
|
|
126
134
|
context 'when it is `subject.should_not` form' do
|
@@ -145,6 +153,12 @@ module Transpec
|
|
145
153
|
rewritten_source.should == expected_source
|
146
154
|
end
|
147
155
|
|
156
|
+
it 'adds record "`obj.should_not` -> `expect(obj).not_to`"' do
|
157
|
+
should_object.expectize!
|
158
|
+
record.original_syntax.should == 'obj.should_not'
|
159
|
+
record.converted_syntax.should == 'expect(obj).not_to'
|
160
|
+
end
|
161
|
+
|
148
162
|
context 'and "to_not" is passed as negative form' do
|
149
163
|
let(:expected_source) do
|
150
164
|
<<-END
|
@@ -158,6 +172,12 @@ module Transpec
|
|
158
172
|
should_object.expectize!('to_not')
|
159
173
|
rewritten_source.should == expected_source
|
160
174
|
end
|
175
|
+
|
176
|
+
it 'adds record "`obj.should_not` -> `expect(obj).to_not`"' do
|
177
|
+
should_object.expectize!('to_not')
|
178
|
+
record.original_syntax.should == 'obj.should_not'
|
179
|
+
record.converted_syntax.should == 'expect(obj).to_not'
|
180
|
+
end
|
161
181
|
end
|
162
182
|
end
|
163
183
|
|
@@ -234,6 +254,12 @@ module Transpec
|
|
234
254
|
should_object.expectize!
|
235
255
|
rewritten_source.should == expected_source
|
236
256
|
end
|
257
|
+
|
258
|
+
it 'adds record "`lambda { }.should` -> `expect { }.to`"' do
|
259
|
+
should_object.expectize!
|
260
|
+
record.original_syntax.should == 'lambda { }.should'
|
261
|
+
record.converted_syntax.should == 'expect { }.to'
|
262
|
+
end
|
237
263
|
end
|
238
264
|
end
|
239
265
|
|
data/tasks/test.rake
CHANGED
@@ -37,14 +37,9 @@ class TranspecTest
|
|
37
37
|
|
38
38
|
puts " Testing on #{name} Project ".center(80, '=')
|
39
39
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
with_clean_bundler_env do
|
44
|
-
sh 'bundle', 'install', *bundler_args
|
45
|
-
sh File.join(Transpec.root, 'bin', 'transpec'), '--force'
|
46
|
-
sh 'bundle exec rspec'
|
47
|
-
end
|
40
|
+
[%w(--force), %w(--force --no-parentheses-matcher-arg)].each do |args|
|
41
|
+
prepare_project
|
42
|
+
run_test(args)
|
48
43
|
end
|
49
44
|
end
|
50
45
|
|
@@ -72,19 +67,31 @@ class TranspecTest
|
|
72
67
|
FileUtils.cp_r(entry, project_dir)
|
73
68
|
end
|
74
69
|
end
|
70
|
+
|
71
|
+
bundle_install
|
75
72
|
end
|
76
73
|
|
77
74
|
def prepare_with_git_repo
|
78
75
|
if Dir.exist?(project_dir)
|
79
76
|
if current_ref == ref
|
80
77
|
git_reset_hard
|
78
|
+
return
|
81
79
|
else
|
82
80
|
require 'fileutils'
|
83
81
|
FileUtils.rm_rf(project_dir)
|
84
|
-
git_clone
|
85
82
|
end
|
86
|
-
|
87
|
-
|
83
|
+
end
|
84
|
+
|
85
|
+
git_clone
|
86
|
+
bundle_install
|
87
|
+
end
|
88
|
+
|
89
|
+
def run_test(transpec_args = [])
|
90
|
+
in_project_dir do
|
91
|
+
with_clean_bundler_env do
|
92
|
+
sh File.join(Transpec.root, 'bin', 'transpec'), *transpec_args
|
93
|
+
sh 'bundle exec rspec'
|
94
|
+
end
|
88
95
|
end
|
89
96
|
end
|
90
97
|
|
@@ -115,6 +122,14 @@ class TranspecTest
|
|
115
122
|
end
|
116
123
|
end
|
117
124
|
|
125
|
+
def bundle_install
|
126
|
+
in_project_dir do
|
127
|
+
with_clean_bundler_env do
|
128
|
+
sh 'bundle', 'install', *bundler_args
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
118
133
|
def with_clean_bundler_env
|
119
134
|
if defined?(Bundler)
|
120
135
|
Bundler.with_clean_env do
|
@@ -145,7 +160,7 @@ namespace :test do
|
|
145
160
|
|
146
161
|
# rubocop:disable LineLength
|
147
162
|
tests = [
|
148
|
-
TranspecTest.new(File.expand_path('.'), nil, []),
|
163
|
+
TranspecTest.new(File.expand_path('.'), nil, ['--quiet']),
|
149
164
|
TranspecTest.new('https://github.com/sferik/twitter.git', 'v4.1.0', bundler_args),
|
150
165
|
TranspecTest.new('https://github.com/yujinakayama/guard.git', 'transpec', bundler_args + %w(--without development)),
|
151
166
|
TranspecTest.new('https://github.com/yujinakayama/mail.git', 'transpec', bundler_args)
|