transpec 3.0.0 → 3.0.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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +2 -0
  3. data/CHANGELOG.md +4 -0
  4. data/lib/transpec/version.rb +1 -1
  5. data/transpec.gemspec +4 -3
  6. metadata +3 -97
  7. data/spec/.rubocop.yml +0 -23
  8. data/spec/integration/configuration_modification_spec.rb +0 -186
  9. data/spec/integration/conversion_spec.rb +0 -145
  10. data/spec/spec_helper.rb +0 -52
  11. data/spec/support/cache_helper.rb +0 -62
  12. data/spec/support/file_helper.rb +0 -25
  13. data/spec/support/shared_context.rb +0 -84
  14. data/spec/transpec/cli_spec.rb +0 -341
  15. data/spec/transpec/commit_message_spec.rb +0 -81
  16. data/spec/transpec/config_spec.rb +0 -99
  17. data/spec/transpec/converter_spec.rb +0 -1374
  18. data/spec/transpec/directory_cloner_spec.rb +0 -74
  19. data/spec/transpec/dynamic_analyzer/rewriter_spec.rb +0 -143
  20. data/spec/transpec/dynamic_analyzer_spec.rb +0 -329
  21. data/spec/transpec/git_spec.rb +0 -151
  22. data/spec/transpec/option_parser_spec.rb +0 -275
  23. data/spec/transpec/processed_source_spec.rb +0 -93
  24. data/spec/transpec/project_spec.rb +0 -194
  25. data/spec/transpec/record_spec.rb +0 -128
  26. data/spec/transpec/report_spec.rb +0 -126
  27. data/spec/transpec/rspec_version_spec.rb +0 -129
  28. data/spec/transpec/spec_file_finder_spec.rb +0 -118
  29. data/spec/transpec/spec_suite_spec.rb +0 -108
  30. data/spec/transpec/static_context_inspector_spec.rb +0 -713
  31. data/spec/transpec/syntax/allow_spec.rb +0 -122
  32. data/spec/transpec/syntax/be_boolean_spec.rb +0 -176
  33. data/spec/transpec/syntax/be_close_spec.rb +0 -51
  34. data/spec/transpec/syntax/current_example_spec.rb +0 -319
  35. data/spec/transpec/syntax/double_spec.rb +0 -175
  36. data/spec/transpec/syntax/example_group_spec.rb +0 -716
  37. data/spec/transpec/syntax/example_spec.rb +0 -301
  38. data/spec/transpec/syntax/expect_spec.rb +0 -313
  39. data/spec/transpec/syntax/have_spec.rb +0 -1276
  40. data/spec/transpec/syntax/hook_spec.rb +0 -215
  41. data/spec/transpec/syntax/its_spec.rb +0 -448
  42. data/spec/transpec/syntax/matcher_definition_spec.rb +0 -59
  43. data/spec/transpec/syntax/method_stub_spec.rb +0 -1301
  44. data/spec/transpec/syntax/oneliner_should_spec.rb +0 -628
  45. data/spec/transpec/syntax/operator_spec.rb +0 -871
  46. data/spec/transpec/syntax/pending_spec.rb +0 -415
  47. data/spec/transpec/syntax/raise_error_spec.rb +0 -354
  48. data/spec/transpec/syntax/receive_spec.rb +0 -499
  49. data/spec/transpec/syntax/rspec_configure_spec.rb +0 -870
  50. data/spec/transpec/syntax/should_receive_spec.rb +0 -1108
  51. data/spec/transpec/syntax/should_spec.rb +0 -497
  52. data/spec/transpec/util_spec.rb +0 -115
  53. data/spec/transpec_spec.rb +0 -22
@@ -1,215 +0,0 @@
1
- # coding: utf-8
2
-
3
- require 'spec_helper'
4
- require 'transpec/syntax/hook'
5
-
6
- module Transpec
7
- class Syntax
8
- describe Hook do
9
- include_context 'parsed objects'
10
- include_context 'syntax object', Hook, :hook_object
11
-
12
- let(:record) { hook_object.report.records.last }
13
-
14
- describe '#convert_scope_name!' do
15
- before do
16
- hook_object.convert_scope_name!
17
- end
18
-
19
- RSpecDSL::HOOK_METHODS.each do |hook_method|
20
- context "with expression `#{hook_method}(:each) { }`" do
21
- let(:source) do
22
- <<-END
23
- describe 'example' do
24
- #{hook_method}(:each) do
25
- do_something
26
- end
27
- end
28
- END
29
- end
30
-
31
- let(:expected_source) do
32
- <<-END
33
- describe 'example' do
34
- #{hook_method}(:example) do
35
- do_something
36
- end
37
- end
38
- END
39
- end
40
-
41
- it "converts to `#{hook_method}(:example) { }` form" do
42
- rewritten_source.should == expected_source
43
- end
44
-
45
- it "adds record `#{hook_method}(:each) { }` -> `#{hook_method}(:example) { }`" do
46
- record.old_syntax.should == "#{hook_method}(:each) { }"
47
- record.new_syntax.should == "#{hook_method}(:example) { }"
48
- end
49
- end
50
- end
51
-
52
- [:before, :after].each do |hook_method|
53
- context "with expression `#{hook_method}(:all) { }`" do
54
- let(:source) do
55
- <<-END
56
- describe 'example' do
57
- #{hook_method}(:all) do
58
- do_something
59
- end
60
- end
61
- END
62
- end
63
-
64
- let(:expected_source) do
65
- <<-END
66
- describe 'example' do
67
- #{hook_method}(:context) do
68
- do_something
69
- end
70
- end
71
- END
72
- end
73
-
74
- it "converts to `#{hook_method}(:context) { }` form" do
75
- rewritten_source.should == expected_source
76
- end
77
-
78
- it "adds record `#{hook_method}(:all) { }` -> `#{hook_method}(:context) { }`" do
79
- record.old_syntax.should == "#{hook_method}(:all) { }"
80
- record.new_syntax.should == "#{hook_method}(:context) { }"
81
- end
82
- end
83
-
84
- context "with expression `RSpec.configure { |c| c.#{hook_method}(:each) { } }`" do
85
- let(:source) do
86
- <<-END
87
- RSpec.configure do |config|
88
- config.#{hook_method}(:each) do
89
- do_something
90
- end
91
- end
92
- END
93
- end
94
-
95
- let(:expected_source) do
96
- <<-END
97
- RSpec.configure do |config|
98
- config.#{hook_method}(:example) do
99
- do_something
100
- end
101
- end
102
- END
103
- end
104
-
105
- it "converts to `RSpec.configure { |c| c.#{hook_method}(:example) { } }` form" do
106
- rewritten_source.should == expected_source
107
- end
108
-
109
- it "adds record `#{hook_method}(:each) { }` -> `#{hook_method}(:example) { }`" do
110
- record.old_syntax.should == "#{hook_method}(:each) { }"
111
- record.new_syntax.should == "#{hook_method}(:example) { }"
112
- end
113
- end
114
-
115
- context "with expression `RSpec.configure { |c| c.#{hook_method}(:suite) { } }`" do
116
- let(:source) do
117
- <<-END
118
- RSpec.configure do |config|
119
- config.#{hook_method}(:suite) do
120
- do_something
121
- end
122
- end
123
- END
124
- end
125
-
126
- it 'does nothing' do
127
- rewritten_source.should == source
128
- end
129
-
130
- it 'does not add record' do
131
- record.should be_nil
132
- end
133
- end
134
- end
135
-
136
- context 'with expression `before { }`' do
137
- let(:source) do
138
- <<-END
139
- describe 'example' do
140
- before do
141
- do_something
142
- end
143
- end
144
- END
145
- end
146
-
147
- it 'does nothing' do
148
- rewritten_source.should == source
149
- end
150
-
151
- it 'does not add record' do
152
- record.should be_nil
153
- end
154
- end
155
-
156
- context 'with expression `before(variable) { }`' do
157
- let(:source) do
158
- <<-END
159
- scope = :each
160
-
161
- describe 'example' do
162
- before(scope) do
163
- do_something
164
- end
165
- end
166
- END
167
- end
168
-
169
- it 'does nothing' do
170
- rewritten_source.should == source
171
- end
172
-
173
- it 'does not add record' do
174
- record.should be_nil
175
- end
176
- end
177
-
178
- context 'with expression `before(:each, :type => :model) { }`' do
179
- let(:source) do
180
- <<-END
181
- scope = :each
182
-
183
- describe 'example' do
184
- before(:each, :type => :model) do
185
- do_something
186
- end
187
- end
188
- END
189
- end
190
-
191
- let(:expected_source) do
192
- <<-END
193
- scope = :each
194
-
195
- describe 'example' do
196
- before(:example, :type => :model) do
197
- do_something
198
- end
199
- end
200
- END
201
- end
202
-
203
- it 'converts to `before(:example, :type => :model) { }` form' do
204
- rewritten_source.should == expected_source
205
- end
206
-
207
- it 'adds record `before(:each) { }` -> `before(:example) { }`' do
208
- record.old_syntax.should == 'before(:each) { }'
209
- record.new_syntax.should == 'before(:example) { }'
210
- end
211
- end
212
- end
213
- end
214
- end
215
- end
@@ -1,448 +0,0 @@
1
- # coding: utf-8
2
-
3
- require 'spec_helper'
4
- require 'transpec/syntax/its'
5
-
6
- module Transpec
7
- class Syntax
8
- describe Its do
9
- include_context 'parsed objects'
10
- include_context 'syntax object', Its, :its_object
11
-
12
- let(:record) { its_object.report.records.last }
13
-
14
- describe '#conversion_target?' do
15
- let(:its_node) do
16
- ast.each_node(:send).find do |send_node|
17
- method_name = send_node.children[1]
18
- method_name == :its
19
- end
20
- end
21
-
22
- let(:its_object) do
23
- Its.new(its_node, runtime_data)
24
- end
25
-
26
- subject { its_object.conversion_target? }
27
-
28
- context 'when rspec-its is loaded in the spec' do
29
- let(:source) do
30
- <<-END
31
- module RSpec
32
- module Its
33
- end
34
- end
35
-
36
- describe 'example' do
37
- subject { ['foo'] }
38
-
39
- its(:size) { should == 1 }
40
- end
41
- END
42
- end
43
-
44
- context 'without runtime information' do
45
- it { should be_true }
46
- end
47
-
48
- context 'with runtime information' do
49
- include_context 'dynamic analysis objects'
50
- it { should be_false }
51
- end
52
- end
53
- end
54
-
55
- describe '#convert_to_describe_subject_it!' do
56
- before do
57
- its_object.convert_to_describe_subject_it!
58
- end
59
-
60
- context 'with expression `its(:size) { ... }`' do
61
- let(:source) do
62
- <<-END
63
- describe 'example' do
64
- subject { ['foo'] }
65
-
66
- its(:size) { should == 1 }
67
- end
68
- END
69
- end
70
-
71
- let(:expected_source) do
72
- <<-END
73
- describe 'example' do
74
- subject { ['foo'] }
75
-
76
- describe '#size' do
77
- subject { super().size }
78
- it { should == 1 }
79
- end
80
- end
81
- END
82
- end
83
-
84
- it "converts to `describe '#size' do subject { super().size }; it { ... } end` form" do
85
- rewritten_source.should == expected_source
86
- end
87
-
88
- it "adds record `its(:attr) { }` -> `describe '#attr' do subject { super().attr }; it { } end`" do
89
- record.old_syntax.should == 'its(:attr) { }'
90
- record.new_syntax.should == "describe '#attr' do subject { super().attr }; it { } end"
91
- end
92
-
93
- context 'and there are consecutive blanks between the #its and the block' do
94
- let(:source) do
95
- <<-END
96
- describe 'example' do
97
- subject { ['foo'] }
98
- its(:size) { should == 1 }
99
- end
100
- END
101
- end
102
-
103
- let(:expected_source) do
104
- <<-END
105
- describe 'example' do
106
- subject { ['foo'] }
107
-
108
- describe '#size' do
109
- subject { super().size }
110
- it { should == 1 }
111
- end
112
- end
113
- END
114
- end
115
-
116
- it 'removes the redundant blanks' do
117
- rewritten_source.should == expected_source
118
- end
119
- end
120
-
121
- context 'and there is no blank line before #its' do
122
- context 'and the indentation level of the previous line is same as the target line' do
123
- let(:source) do
124
- <<-END
125
- describe 'example' do
126
- subject { ['foo'] }
127
- its(:size) { should == 1 }
128
- end
129
- END
130
- end
131
-
132
- let(:expected_source) do
133
- <<-END
134
- describe 'example' do
135
- subject { ['foo'] }
136
-
137
- describe '#size' do
138
- subject { super().size }
139
- it { should == 1 }
140
- end
141
- end
142
- END
143
- end
144
-
145
- it 'inserts a blank line before #its' do
146
- rewritten_source.should == expected_source
147
- end
148
- end
149
-
150
- context 'and the indentation level of the previous line is lower than the target line' do
151
- let(:source) do
152
- <<-END
153
- describe 'example' do
154
- subject { ['foo'] }
155
-
156
- context 'in some case' do
157
- its(:size) { should == 1 }
158
- end
159
- end
160
- END
161
- end
162
-
163
- let(:expected_source) do
164
- <<-END
165
- describe 'example' do
166
- subject { ['foo'] }
167
-
168
- context 'in some case' do
169
- describe '#size' do
170
- subject { super().size }
171
- it { should == 1 }
172
- end
173
- end
174
- end
175
- END
176
- end
177
-
178
- it 'does not insert blank line before #its' do
179
- rewritten_source.should == expected_source
180
- end
181
- end
182
- end
183
- end
184
-
185
- context "with expression `its('size') { ... }`" do
186
- let(:source) do
187
- <<-END
188
- describe 'example' do
189
- subject { ['foo'] }
190
-
191
- its('size') { should == 1 }
192
- end
193
- END
194
- end
195
-
196
- let(:expected_source) do
197
- <<-END
198
- describe 'example' do
199
- subject { ['foo'] }
200
-
201
- describe '#size' do
202
- subject { super().size }
203
- it { should == 1 }
204
- end
205
- end
206
- END
207
- end
208
-
209
- it "converts to `describe '#size' do subject { super().size }; it { ... } end` form" do
210
- rewritten_source.should == expected_source
211
- end
212
-
213
- it "adds record `its(:attr) { }` -> `describe '#attr' do subject { super().attr }; it { } end`" do
214
- record.old_syntax.should == 'its(:attr) { }'
215
- record.new_syntax.should == "describe '#attr' do subject { super().attr }; it { } end"
216
- end
217
- end
218
-
219
- context "with expression `its('size.odd?') { ... }`" do
220
- let(:source) do
221
- <<-END
222
- describe 'example' do
223
- subject { ['foo'] }
224
-
225
- its('size.odd?') { should be_true }
226
- end
227
- END
228
- end
229
-
230
- let(:expected_source) do
231
- <<-END
232
- describe 'example' do
233
- subject { ['foo'] }
234
-
235
- describe '#size' do
236
- subject { super().size }
237
- describe '#odd?' do
238
- subject { super().odd? }
239
- it { should be_true }
240
- end
241
- end
242
- end
243
- END
244
- end
245
-
246
- it 'converts to nested #describe' do
247
- rewritten_source.should == expected_source
248
- end
249
-
250
- it "adds record `its(:attr) { }` -> `describe '#attr' do subject { super().attr }; it { } end`" do
251
- record.old_syntax.should == 'its(:attr) { }'
252
- record.new_syntax.should == "describe '#attr' do subject { super().attr }; it { } end"
253
- end
254
- end
255
-
256
- context 'with expression `its([:foo]) { ... }`' do
257
- let(:source) do
258
- <<-END
259
- describe 'example' do
260
- subject { { foo: 'bar' } }
261
-
262
- its([:foo]) { should == 'bar' }
263
- end
264
- END
265
- end
266
-
267
- let(:expected_source) do
268
- <<-END
269
- describe 'example' do
270
- subject { { foo: 'bar' } }
271
-
272
- describe '[:foo]' do
273
- subject { super()[:foo] }
274
- it { should == 'bar' }
275
- end
276
- end
277
- END
278
- end
279
-
280
- it "converts to `describe '[:foo]' do subject { super()[:foo] }; it { ... } end` form" do
281
- rewritten_source.should == expected_source
282
- end
283
-
284
- it "adds record `its([:key]) { }` -> `describe '[:key]' do subject { super()[:key] }; it { } end`" do
285
- record.old_syntax.should == 'its([:key]) { }'
286
- record.new_syntax.should == "describe '[:key]' do subject { super()[:key] }; it { } end"
287
- end
288
- end
289
-
290
- context "with expression `its(['foo']) { ... }`" do
291
- let(:source) do
292
- <<-END
293
- describe 'example' do
294
- subject { { 'foo' => 'bar' } }
295
-
296
- its(['foo']) { should == 'bar' }
297
- end
298
- END
299
- end
300
-
301
- let(:expected_source) do
302
- <<-END
303
- describe 'example' do
304
- subject { { 'foo' => 'bar' } }
305
-
306
- describe "['foo']" do
307
- subject { super()['foo'] }
308
- it { should == 'bar' }
309
- end
310
- end
311
- END
312
- end
313
-
314
- it "converts to `describe \"['foo']\" do subject { super()['foo'] }; it { ... } end` form" do
315
- rewritten_source.should == expected_source
316
- end
317
-
318
- it "adds record `its([:key]) { }` -> `describe '[:key]' do subject { super()[:key] }; it { } end`" do
319
- record.old_syntax.should == 'its([:key]) { }'
320
- record.new_syntax.should == "describe '[:key]' do subject { super()[:key] }; it { } end"
321
- end
322
- end
323
-
324
- context 'with expression `its([3, 2]) { ... }`' do
325
- let(:source) do
326
- <<-END
327
- describe 'example' do
328
- subject { %w(a b c d r f g) }
329
-
330
- its([3, 2]) { should == %w(d r) }
331
- end
332
- END
333
- end
334
-
335
- let(:expected_source) do
336
- <<-END
337
- describe 'example' do
338
- subject { %w(a b c d r f g) }
339
-
340
- describe '[3, 2]' do
341
- subject { super()[3, 2] }
342
- it { should == %w(d r) }
343
- end
344
- end
345
- END
346
- end
347
-
348
- it "converts to `describe '[3, 2]' do subject { super()[3, 2] }; it { ... } end` form" do
349
- rewritten_source.should == expected_source
350
- end
351
-
352
- it "adds record `its([:key]) { }` -> `describe '[:key]' do subject { super()[:key] }; it { } end`" do
353
- record.old_syntax.should == 'its([:key]) { }'
354
- record.new_syntax.should == "describe '[:key]' do subject { super()[:key] }; it { } end"
355
- end
356
- end
357
-
358
- context 'with expression `its(attribute) { ... }`' do
359
- let(:source) do
360
- <<-END
361
- describe 'example' do
362
- subject { 'foo' }
363
-
364
- [
365
- [:size, 3],
366
- [:upcase, 'FOO']
367
- ].each do |attribute, expected_value|
368
- its(attribute) { should == expected_value }
369
- end
370
- end
371
- END
372
- end
373
-
374
- let(:expected_source) do
375
- <<-END
376
- describe 'example' do
377
- subject { 'foo' }
378
-
379
- [
380
- [:size, 3],
381
- [:upcase, 'FOO']
382
- ].each do |attribute, expected_value|
383
- describe attribute do
384
- subject { super().send(attribute) }
385
- it { should == expected_value }
386
- end
387
- end
388
- end
389
- END
390
- end
391
-
392
- it 'converts to `describe attribute do subject { super().send(attribute) }; it { ... } end` form' do
393
- rewritten_source.should == expected_source
394
- end
395
-
396
- it "adds record `its(:attr) { }` -> `describe '#attr' do subject { super().attr }; it { } end`" do
397
- record.old_syntax.should == 'its(:attr) { }'
398
- record.new_syntax.should == "describe '#attr' do subject { super().attr }; it { } end"
399
- end
400
- end
401
-
402
- context 'with expression `its([1, length]) { ... }`' do
403
- let(:source) do
404
- <<-END
405
- describe 'example' do
406
- subject { 'foobar' }
407
-
408
- [
409
- [2, 'oo'],
410
- [3, 'oob']
411
- ].each do |length, expected_value|
412
- its([1, length]) { should == expected_value }
413
- end
414
- end
415
- END
416
- end
417
-
418
- let(:expected_source) do
419
- <<-END
420
- describe 'example' do
421
- subject { 'foobar' }
422
-
423
- [
424
- [2, 'oo'],
425
- [3, 'oob']
426
- ].each do |length, expected_value|
427
- describe [1, length] do
428
- subject { super()[1, length] }
429
- it { should == expected_value }
430
- end
431
- end
432
- end
433
- END
434
- end
435
-
436
- it 'converts to `describe [1, length] do subject { super()[1, length] }; it { ... } end` form' do
437
- rewritten_source.should == expected_source
438
- end
439
-
440
- it "adds record `its([:key]) { }` -> `describe '[:key]' do subject { super()[:key] }; it { } end`" do
441
- record.old_syntax.should == 'its([:key]) { }'
442
- record.new_syntax.should == "describe '[:key]' do subject { super()[:key] }; it { } end"
443
- end
444
- end
445
- end
446
- end
447
- end
448
- end