transpec 0.2.6 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +1 -1
  4. data/CHANGELOG.md +10 -0
  5. data/README.md +111 -56
  6. data/README.md.erb +117 -62
  7. data/lib/transpec/ast/node.rb +41 -0
  8. data/lib/transpec/base_rewriter.rb +55 -0
  9. data/lib/transpec/cli.rb +43 -153
  10. data/lib/transpec/configuration.rb +13 -9
  11. data/lib/transpec/{rewriter.rb → converter.rb} +44 -71
  12. data/lib/transpec/dynamic_analyzer/rewriter.rb +94 -0
  13. data/lib/transpec/dynamic_analyzer/runtime_data.rb +27 -0
  14. data/lib/transpec/dynamic_analyzer.rb +166 -0
  15. data/lib/transpec/file_finder.rb +53 -0
  16. data/lib/transpec/option_parser.rb +166 -0
  17. data/lib/transpec/{context.rb → static_context_inspector.rb} +2 -2
  18. data/lib/transpec/syntax/be_close.rb +7 -9
  19. data/lib/transpec/syntax/double.rb +6 -10
  20. data/lib/transpec/syntax/expect.rb +35 -0
  21. data/lib/transpec/syntax/have.rb +195 -0
  22. data/lib/transpec/syntax/method_stub.rb +22 -27
  23. data/lib/transpec/syntax/mixin/allow_no_message.rb +73 -0
  24. data/lib/transpec/syntax/mixin/any_instance.rb +22 -0
  25. data/lib/transpec/syntax/mixin/expectizable.rb +26 -0
  26. data/lib/transpec/syntax/mixin/have_matcher.rb +23 -0
  27. data/lib/transpec/syntax/mixin/monkey_patch.rb +37 -0
  28. data/lib/transpec/syntax/mixin/send.rb +109 -0
  29. data/lib/transpec/syntax/{matcher.rb → operator_matcher.rb} +27 -14
  30. data/lib/transpec/syntax/raise_error.rb +6 -10
  31. data/lib/transpec/syntax/rspec_configure.rb +29 -28
  32. data/lib/transpec/syntax/should.rb +45 -15
  33. data/lib/transpec/syntax/should_receive.rb +44 -16
  34. data/lib/transpec/syntax.rb +29 -21
  35. data/lib/transpec/util.rb +12 -2
  36. data/lib/transpec/version.rb +3 -3
  37. data/spec/spec_helper.rb +8 -6
  38. data/spec/support/cache_helper.rb +50 -0
  39. data/spec/support/shared_context.rb +49 -1
  40. data/spec/transpec/ast/node_spec.rb +65 -0
  41. data/spec/transpec/cli_spec.rb +33 -242
  42. data/spec/transpec/commit_message_spec.rb +2 -2
  43. data/spec/transpec/configuration_spec.rb +12 -8
  44. data/spec/transpec/{rewriter_spec.rb → converter_spec.rb} +198 -148
  45. data/spec/transpec/dynamic_analyzer/rewriter_spec.rb +183 -0
  46. data/spec/transpec/dynamic_analyzer_spec.rb +164 -0
  47. data/spec/transpec/file_finder_spec.rb +118 -0
  48. data/spec/transpec/option_parser_spec.rb +185 -0
  49. data/spec/transpec/{context_spec.rb → static_context_inspector_spec.rb} +27 -12
  50. data/spec/transpec/syntax/be_close_spec.rb +8 -4
  51. data/spec/transpec/syntax/double_spec.rb +105 -12
  52. data/spec/transpec/syntax/expect_spec.rb +83 -0
  53. data/spec/transpec/syntax/have_spec.rb +599 -0
  54. data/spec/transpec/syntax/method_stub_spec.rb +276 -115
  55. data/spec/transpec/syntax/{matcher_spec.rb → operator_matcher_spec.rb} +277 -98
  56. data/spec/transpec/syntax/raise_error_spec.rb +92 -46
  57. data/spec/transpec/syntax/should_receive_spec.rb +298 -92
  58. data/spec/transpec/syntax/should_spec.rb +230 -44
  59. data/spec/transpec/util_spec.rb +2 -9
  60. data/tasks/lib/transpec_demo.rb +1 -1
  61. data/tasks/lib/transpec_test.rb +5 -7
  62. data/tasks/test.rake +5 -1
  63. data/transpec.gemspec +1 -1
  64. metadata +46 -22
  65. data/lib/transpec/syntax/able_to_allow_no_message.rb +0 -73
  66. data/lib/transpec/syntax/able_to_target_any_instance.rb +0 -24
  67. data/lib/transpec/syntax/expectizable.rb +0 -27
  68. data/lib/transpec/syntax/send_node_syntax.rb +0 -57
@@ -28,8 +28,10 @@ module Transpec
28
28
  context 'when it is `lambda { }.should raise_error` form' do
29
29
  let(:source) do
30
30
  <<-END
31
- it 'raises error' do
32
- lambda { do_something }.should raise_error
31
+ describe 'example' do
32
+ it 'raises error' do
33
+ lambda { do_something }.should raise_error
34
+ end
33
35
  end
34
36
  END
35
37
  end
@@ -40,8 +42,10 @@ module Transpec
40
42
  context 'when it is `expect { }.to raise_error` form' do
41
43
  let(:source) do
42
44
  <<-END
43
- it 'raises error' do
44
- expect { do_something }.to raise_error
45
+ describe 'example' do
46
+ it 'raises error' do
47
+ expect { do_something }.to raise_error
48
+ end
45
49
  end
46
50
  END
47
51
  end
@@ -52,8 +56,10 @@ module Transpec
52
56
  context 'when it is `lambda { }.should raise_error { |error| ... }` form' do
53
57
  let(:source) do
54
58
  <<-END
55
- it 'raises error' do
56
- lambda { do_something }.should raise_error { |error| do_anything }
59
+ describe 'example' do
60
+ it 'raises error' do
61
+ lambda { do_something }.should raise_error { |error| do_anything }
62
+ end
57
63
  end
58
64
  END
59
65
  end
@@ -64,8 +70,10 @@ module Transpec
64
70
  context 'when it is `expect { }.to raise_error { |error| ... }` form' do
65
71
  let(:source) do
66
72
  <<-END
67
- it 'raises error' do
68
- expect { do_something }.to raise_error { |error| do_anything }
73
+ describe 'example' do
74
+ it 'raises error' do
75
+ expect { do_something }.to raise_error { |error| do_anything }
76
+ end
69
77
  end
70
78
  END
71
79
  end
@@ -76,8 +84,10 @@ module Transpec
76
84
  context 'when it is `lambda { }.should_not raise_error` form' do
77
85
  let(:source) do
78
86
  <<-END
79
- it 'does not raise error' do
80
- lambda { do_something }.should_not raise_error
87
+ describe 'example' do
88
+ it 'does not raise error' do
89
+ lambda { do_something }.should_not raise_error
90
+ end
81
91
  end
82
92
  END
83
93
  end
@@ -88,8 +98,10 @@ module Transpec
88
98
  context 'when it is `expect { }.not_to raise_error` form' do
89
99
  let(:source) do
90
100
  <<-END
91
- it 'does not raise error' do
92
- expect { do_something }.not_to raise_error
101
+ describe 'example' do
102
+ it 'does not raise error' do
103
+ expect { do_something }.not_to raise_error
104
+ end
93
105
  end
94
106
  END
95
107
  end
@@ -100,8 +112,10 @@ module Transpec
100
112
  context 'when it is `expect { }.to_not raise_error` form' do
101
113
  let(:source) do
102
114
  <<-END
103
- it 'does not raise error' do
104
- expect { do_something }.to_not raise_error
115
+ describe 'example' do
116
+ it 'does not raise error' do
117
+ expect { do_something }.to_not raise_error
118
+ end
105
119
  end
106
120
  END
107
121
  end
@@ -118,8 +132,10 @@ module Transpec
118
132
  context 'when it is `lambda { }.should raise_error(SpecificErrorClass)` form' do
119
133
  let(:source) do
120
134
  <<-END
121
- it 'raises SpecificErrorClass' do
122
- lambda { do_something }.should raise_error(SpecificErrorClass)
135
+ describe 'example' do
136
+ it 'raises SpecificErrorClass' do
137
+ lambda { do_something }.should raise_error(SpecificErrorClass)
138
+ end
123
139
  end
124
140
  END
125
141
  end
@@ -136,8 +152,10 @@ module Transpec
136
152
  context 'when it is `expect { }.to raise_error(SpecificErrorClass)` form' do
137
153
  let(:source) do
138
154
  <<-END
139
- it 'raises SpecificErrorClass' do
140
- expect { do_something }.to raise_error(SpecificErrorClass)
155
+ describe 'example' do
156
+ it 'raises SpecificErrorClass' do
157
+ expect { do_something }.to raise_error(SpecificErrorClass)
158
+ end
141
159
  end
142
160
  END
143
161
  end
@@ -154,8 +172,10 @@ module Transpec
154
172
  context 'when it is `lambda { }.should raise_error(SpecificErrorClass) { |error| ... }` form' do
155
173
  let(:source) do
156
174
  <<-END
157
- it 'raises SpecificErrorClass' do
158
- lambda { do_something }.should raise_error(SpecificErrorClass) { |error| do_anything }
175
+ describe 'example' do
176
+ it 'raises SpecificErrorClass' do
177
+ lambda { do_something }.should raise_error(SpecificErrorClass) { |error| do_anything }
178
+ end
159
179
  end
160
180
  END
161
181
  end
@@ -172,8 +192,10 @@ module Transpec
172
192
  context 'when it is `expect { }.to raise_error(SpecificErrorClass) { |error| ... }` form' do
173
193
  let(:source) do
174
194
  <<-END
175
- it 'raises SpecificErrorClass' do
176
- expect { do_something }.to raise_error(SpecificErrorClass) { |error| do_anything }
195
+ describe 'example' do
196
+ it 'raises SpecificErrorClass' do
197
+ expect { do_something }.to raise_error(SpecificErrorClass) { |error| do_anything }
198
+ end
177
199
  end
178
200
  END
179
201
  end
@@ -190,16 +212,20 @@ module Transpec
190
212
  context 'when it is `lambda { }.should_not raise_error(SpecificErrorClass)` form' do
191
213
  let(:source) do
192
214
  <<-END
193
- it 'does not raise error' do
194
- lambda { do_something }.should_not raise_error(SpecificErrorClass)
215
+ describe 'example' do
216
+ it 'does not raise error' do
217
+ lambda { do_something }.should_not raise_error(SpecificErrorClass)
218
+ end
195
219
  end
196
220
  END
197
221
  end
198
222
 
199
223
  let(:expected_source) do
200
224
  <<-END
201
- it 'does not raise error' do
202
- lambda { do_something }.should_not raise_error
225
+ describe 'example' do
226
+ it 'does not raise error' do
227
+ lambda { do_something }.should_not raise_error
228
+ end
203
229
  end
204
230
  END
205
231
  end
@@ -218,16 +244,20 @@ module Transpec
218
244
  context 'when it is `expect { }.not_to raise_error(SpecificErrorClass)` form' do
219
245
  let(:source) do
220
246
  <<-END
221
- it 'does not raise error' do
222
- expect { do_something }.not_to raise_error(SpecificErrorClass)
247
+ describe 'example' do
248
+ it 'does not raise error' do
249
+ expect { do_something }.not_to raise_error(SpecificErrorClass)
250
+ end
223
251
  end
224
252
  END
225
253
  end
226
254
 
227
255
  let(:expected_source) do
228
256
  <<-END
229
- it 'does not raise error' do
230
- expect { do_something }.not_to raise_error
257
+ describe 'example' do
258
+ it 'does not raise error' do
259
+ expect { do_something }.not_to raise_error
260
+ end
231
261
  end
232
262
  END
233
263
  end
@@ -240,16 +270,20 @@ module Transpec
240
270
  context 'when it is `expect { }.to_not raise_error(SpecificErrorClass)` form' do
241
271
  let(:source) do
242
272
  <<-END
243
- it 'does not raise error' do
244
- expect { do_something }.to_not raise_error(SpecificErrorClass)
273
+ describe 'example' do
274
+ it 'does not raise error' do
275
+ expect { do_something }.to_not raise_error(SpecificErrorClass)
276
+ end
245
277
  end
246
278
  END
247
279
  end
248
280
 
249
281
  let(:expected_source) do
250
282
  <<-END
251
- it 'does not raise error' do
252
- expect { do_something }.to_not raise_error
283
+ describe 'example' do
284
+ it 'does not raise error' do
285
+ expect { do_something }.to_not raise_error
286
+ end
253
287
  end
254
288
  END
255
289
  end
@@ -268,16 +302,20 @@ module Transpec
268
302
  context 'when it is `expect { }.not_to raise_error SpecificErrorClass` form' do
269
303
  let(:source) do
270
304
  <<-END
271
- it 'does not raise error' do
272
- expect { do_something }.not_to raise_error SpecificErrorClass
305
+ describe 'example' do
306
+ it 'does not raise error' do
307
+ expect { do_something }.not_to raise_error SpecificErrorClass
308
+ end
273
309
  end
274
310
  END
275
311
  end
276
312
 
277
313
  let(:expected_source) do
278
314
  <<-END
279
- it 'does not raise error' do
280
- expect { do_something }.not_to raise_error
315
+ describe 'example' do
316
+ it 'does not raise error' do
317
+ expect { do_something }.not_to raise_error
318
+ end
281
319
  end
282
320
  END
283
321
  end
@@ -296,16 +334,20 @@ module Transpec
296
334
  context 'when it is `expect { }.not_to raise_error(SpecificErrorClass, message)` form' do
297
335
  let(:source) do
298
336
  <<-END
299
- it 'does not raise error' do
300
- expect { do_something }.not_to raise_error(SpecificErrorClass, message)
337
+ describe 'example' do
338
+ it 'does not raise error' do
339
+ expect { do_something }.not_to raise_error(SpecificErrorClass, message)
340
+ end
301
341
  end
302
342
  END
303
343
  end
304
344
 
305
345
  let(:expected_source) do
306
346
  <<-END
307
- it 'does not raise error' do
308
- expect { do_something }.not_to raise_error
347
+ describe 'example' do
348
+ it 'does not raise error' do
349
+ expect { do_something }.not_to raise_error
350
+ end
309
351
  end
310
352
  END
311
353
  end
@@ -324,16 +366,20 @@ module Transpec
324
366
  context 'when it is `expect { }.not_to raise_error(message)` form' do
325
367
  let(:source) do
326
368
  <<-END
327
- it 'does not raise error' do
328
- expect { do_something }.not_to raise_error(message)
369
+ describe 'example' do
370
+ it 'does not raise error' do
371
+ expect { do_something }.not_to raise_error(message)
372
+ end
329
373
  end
330
374
  END
331
375
  end
332
376
 
333
377
  let(:expected_source) do
334
378
  <<-END
335
- it 'does not raise error' do
336
- expect { do_something }.not_to raise_error
379
+ describe 'example' do
380
+ it 'does not raise error' do
381
+ expect { do_something }.not_to raise_error
382
+ end
337
383
  end
338
384
  END
339
385
  end