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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fe2492f7a3b324bdfb3f2facd8a1ffb9369b6228
4
- data.tar.gz: f710841766c727037a9adb01c857f4a365c39a73
3
+ metadata.gz: 196cada3fc6e32784d3e5392042482f6fd229a3d
4
+ data.tar.gz: 5c20aff88c81968bf371fa3aeac09e75b5b29a04
5
5
  SHA512:
6
- metadata.gz: 35e7f4ef63186b8203c900cffe147e7dc0edf2686c7c2621055f72690c8f1ac8363128c869900942ef8901dcc1410db8b74d51068a1dfed6ae59f04e6ec2030b
7
- data.tar.gz: c8077f07f56bee2f1828c8b7cc44b0c3c3239ae5a84a271c8e9244a8c8a5877a593d0bf211c07dd559c7f2062273735743b89c954f08174e13f8e9980ecb228d
6
+ metadata.gz: 1e0632950453067d50237c5a5ce8fc1223271ac7009c53915c4d3bbc04cb32aea820d2f03e44e995e692ddec57804b2dd49e2d31f981fbe6f1eea1ab24d4118e
7
+ data.tar.gz: dcf97938424d1788764298694806e59e174abc29b5d5643c359d310a67dda70e5d039f2f2a63adf4389811765b742e3fb3ba73e1512f7b8fa199ea98ffdec58c
data/.rubocop.yml CHANGED
@@ -2,6 +2,7 @@
2
2
  AllCops:
3
3
  Include:
4
4
  - 'Guardfile'
5
+ - '*.gemspec'
5
6
  - '**/*.rake'
6
7
  Exclude:
7
8
  - 'tmp/**/*'
@@ -31,6 +32,7 @@ WordArray:
31
32
  RegexpLiteral:
32
33
  Exclude:
33
34
  - 'Guardfile'
35
+ - '*.gemspec'
34
36
 
35
37
  EmptyElse:
36
38
  Enabled: false
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Development
4
4
 
5
+ ## v3.0.1
6
+
7
+ * Exclude spec files from the gem package to lighten the package size.
8
+
5
9
  ## v3.0.0
6
10
 
7
11
  * Check whether rspec-rails is used in the target project via `Gemfile.lock` when `-s/--skip-dynamic-analysis` option is specified. ([#88](https://github.com/yujinakayama/transpec/issues/88))
@@ -5,7 +5,7 @@ module Transpec
5
5
  module Version
6
6
  MAJOR = 3
7
7
  MINOR = 0
8
- PATCH = 0
8
+ PATCH = 1
9
9
 
10
10
  def self.to_s
11
11
  [MAJOR, MINOR, PATCH].join('.')
data/transpec.gemspec CHANGED
@@ -10,14 +10,15 @@ Gem::Specification.new do |spec|
10
10
  spec.authors = ['Yuji Nakayama']
11
11
  spec.email = ['nkymyj@gmail.com']
12
12
  spec.summary = 'The RSpec syntax converter'
13
- spec.description = 'Transpec converts your specs to the latest RSpec syntax ' +
13
+ spec.description = 'Transpec converts your specs to the latest RSpec syntax ' \
14
14
  'with static and dynamic code analysis.'
15
15
  spec.homepage = 'http://yujinakayama.me/transpec/'
16
16
  spec.license = 'MIT'
17
17
 
18
- spec.files = `git ls-files`.split($/)
18
+ spec.files = `git ls-files -z`.split("\x0").reject do |path|
19
+ path.match(%r{^(test|spec|features)/})
20
+ end
19
21
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
21
22
  spec.require_paths = ['lib']
22
23
 
23
24
  spec.required_ruby_version = '>= 1.9.3'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: transpec
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuji Nakayama
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-12 00:00:00.000000000 Z
11
+ date: 2014-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parser
@@ -341,53 +341,6 @@ files:
341
341
  - lib/transpec/syntax/should_receive.rb
342
342
  - lib/transpec/util.rb
343
343
  - lib/transpec/version.rb
344
- - spec/.rubocop.yml
345
- - spec/integration/configuration_modification_spec.rb
346
- - spec/integration/conversion_spec.rb
347
- - spec/spec_helper.rb
348
- - spec/support/cache_helper.rb
349
- - spec/support/file_helper.rb
350
- - spec/support/shared_context.rb
351
- - spec/transpec/cli_spec.rb
352
- - spec/transpec/commit_message_spec.rb
353
- - spec/transpec/config_spec.rb
354
- - spec/transpec/converter_spec.rb
355
- - spec/transpec/directory_cloner_spec.rb
356
- - spec/transpec/dynamic_analyzer/rewriter_spec.rb
357
- - spec/transpec/dynamic_analyzer_spec.rb
358
- - spec/transpec/git_spec.rb
359
- - spec/transpec/option_parser_spec.rb
360
- - spec/transpec/processed_source_spec.rb
361
- - spec/transpec/project_spec.rb
362
- - spec/transpec/record_spec.rb
363
- - spec/transpec/report_spec.rb
364
- - spec/transpec/rspec_version_spec.rb
365
- - spec/transpec/spec_file_finder_spec.rb
366
- - spec/transpec/spec_suite_spec.rb
367
- - spec/transpec/static_context_inspector_spec.rb
368
- - spec/transpec/syntax/allow_spec.rb
369
- - spec/transpec/syntax/be_boolean_spec.rb
370
- - spec/transpec/syntax/be_close_spec.rb
371
- - spec/transpec/syntax/current_example_spec.rb
372
- - spec/transpec/syntax/double_spec.rb
373
- - spec/transpec/syntax/example_group_spec.rb
374
- - spec/transpec/syntax/example_spec.rb
375
- - spec/transpec/syntax/expect_spec.rb
376
- - spec/transpec/syntax/have_spec.rb
377
- - spec/transpec/syntax/hook_spec.rb
378
- - spec/transpec/syntax/its_spec.rb
379
- - spec/transpec/syntax/matcher_definition_spec.rb
380
- - spec/transpec/syntax/method_stub_spec.rb
381
- - spec/transpec/syntax/oneliner_should_spec.rb
382
- - spec/transpec/syntax/operator_spec.rb
383
- - spec/transpec/syntax/pending_spec.rb
384
- - spec/transpec/syntax/raise_error_spec.rb
385
- - spec/transpec/syntax/receive_spec.rb
386
- - spec/transpec/syntax/rspec_configure_spec.rb
387
- - spec/transpec/syntax/should_receive_spec.rb
388
- - spec/transpec/syntax/should_spec.rb
389
- - spec/transpec/util_spec.rb
390
- - spec/transpec_spec.rb
391
344
  - tasks/ci/spec.rake
392
345
  - tasks/demo.rake
393
346
  - tasks/fixtures/mail/2.99.0/COMMIT_EDITMSG
@@ -424,52 +377,5 @@ rubygems_version: 2.4.3
424
377
  signing_key:
425
378
  specification_version: 4
426
379
  summary: The RSpec syntax converter
427
- test_files:
428
- - spec/.rubocop.yml
429
- - spec/integration/configuration_modification_spec.rb
430
- - spec/integration/conversion_spec.rb
431
- - spec/spec_helper.rb
432
- - spec/support/cache_helper.rb
433
- - spec/support/file_helper.rb
434
- - spec/support/shared_context.rb
435
- - spec/transpec/cli_spec.rb
436
- - spec/transpec/commit_message_spec.rb
437
- - spec/transpec/config_spec.rb
438
- - spec/transpec/converter_spec.rb
439
- - spec/transpec/directory_cloner_spec.rb
440
- - spec/transpec/dynamic_analyzer/rewriter_spec.rb
441
- - spec/transpec/dynamic_analyzer_spec.rb
442
- - spec/transpec/git_spec.rb
443
- - spec/transpec/option_parser_spec.rb
444
- - spec/transpec/processed_source_spec.rb
445
- - spec/transpec/project_spec.rb
446
- - spec/transpec/record_spec.rb
447
- - spec/transpec/report_spec.rb
448
- - spec/transpec/rspec_version_spec.rb
449
- - spec/transpec/spec_file_finder_spec.rb
450
- - spec/transpec/spec_suite_spec.rb
451
- - spec/transpec/static_context_inspector_spec.rb
452
- - spec/transpec/syntax/allow_spec.rb
453
- - spec/transpec/syntax/be_boolean_spec.rb
454
- - spec/transpec/syntax/be_close_spec.rb
455
- - spec/transpec/syntax/current_example_spec.rb
456
- - spec/transpec/syntax/double_spec.rb
457
- - spec/transpec/syntax/example_group_spec.rb
458
- - spec/transpec/syntax/example_spec.rb
459
- - spec/transpec/syntax/expect_spec.rb
460
- - spec/transpec/syntax/have_spec.rb
461
- - spec/transpec/syntax/hook_spec.rb
462
- - spec/transpec/syntax/its_spec.rb
463
- - spec/transpec/syntax/matcher_definition_spec.rb
464
- - spec/transpec/syntax/method_stub_spec.rb
465
- - spec/transpec/syntax/oneliner_should_spec.rb
466
- - spec/transpec/syntax/operator_spec.rb
467
- - spec/transpec/syntax/pending_spec.rb
468
- - spec/transpec/syntax/raise_error_spec.rb
469
- - spec/transpec/syntax/receive_spec.rb
470
- - spec/transpec/syntax/rspec_configure_spec.rb
471
- - spec/transpec/syntax/should_receive_spec.rb
472
- - spec/transpec/syntax/should_spec.rb
473
- - spec/transpec/util_spec.rb
474
- - spec/transpec_spec.rb
380
+ test_files: []
475
381
  has_rdoc:
data/spec/.rubocop.yml DELETED
@@ -1,23 +0,0 @@
1
-
2
- inherit_from: ../.rubocop.yml
3
-
4
- # Avoid warning "Possibly useless use of == in void context"
5
- # for `should ==`
6
- Void:
7
- Enabled: false
8
-
9
- # Lengthen for long descriptions.
10
- LineLength:
11
- Max: 120
12
-
13
- # raise_error matcher always requires {} form block.
14
- Blocks:
15
- Enabled: false
16
-
17
- # Sometimes block alignment does not suit RSpec syntax.
18
- BlockAlignment:
19
- Enabled: false
20
-
21
- # Suppress offences for namespace classes only with #describe.
22
- ClassLength:
23
- Enabled: false
@@ -1,186 +0,0 @@
1
- # coding: utf-8
2
-
3
- require 'spec_helper'
4
- require 'transpec/cli'
5
-
6
- module Transpec
7
- describe 'RSpec.configure modification' do
8
- include FileHelper
9
- include_context 'isolated environment'
10
-
11
- let(:cli) do
12
- DynamicAnalyzer.any_instance.stub(:silent?).and_return(true)
13
- cli = CLI.new
14
- cli.stub(:puts)
15
- cli
16
- end
17
-
18
- context 'when there are multiple RSpec.configure in the spec suite' do
19
- it 'adds new options only to the one that was run first' do
20
- create_file('spec/spec_helper.rb', <<-END)
21
- RSpec.configure do |config|
22
- end
23
- END
24
-
25
- create_file('spec/unit/spec_helper.rb', <<-END)
26
- require 'spec_helper'
27
-
28
- RSpec.configure do |config|
29
- end
30
- END
31
-
32
- create_file('spec/unit/unit_spec.rb', <<-END)
33
- require 'unit/spec_helper'
34
-
35
- describe 'example' do
36
- it 'responds to #message' do
37
- Object.any_instance.stub(:message) do |arg|
38
- end
39
- end
40
- end
41
- END
42
-
43
- cli.project.stub(:rspec_version).and_return(RSpecVersion.new('2.99.0'))
44
- cli.run([])
45
-
46
- File.read('spec/spec_helper.rb').should == <<-END
47
- RSpec.configure do |config|
48
- config.mock_with :rspec do |mocks|
49
- # In RSpec 3, `any_instance` implementation blocks will be yielded the receiving
50
- # instance as the first block argument to allow the implementation block to use
51
- # the state of the receiver.
52
- # In RSpec 2.99, to maintain compatibility with RSpec 3 you need to either set
53
- # this config option to `false` OR set this to `true` and update your
54
- # `any_instance` implementation blocks to account for the first block argument
55
- # being the receiving instance.
56
- mocks.yield_receiver_to_any_instance_implementation_blocks = true
57
- end
58
- end
59
- END
60
-
61
- File.read('spec/unit/spec_helper.rb').should == <<-END
62
- require 'spec_helper'
63
-
64
- RSpec.configure do |config|
65
- end
66
- END
67
- end
68
-
69
- it 'converts deprecated options in all RSpec.configure' do
70
- create_file('spec/spec_helper.rb', <<-END)
71
- RSpec.configure do |config|
72
- config.color_enabled = true
73
- end
74
- END
75
-
76
- create_file('spec/unit/spec_helper.rb', <<-END)
77
- require 'spec_helper'
78
-
79
- RSpec.configure do |config|
80
- config.color_enabled = true
81
- end
82
- END
83
-
84
- create_file('spec/unit/unit_spec.rb', <<-END)
85
- require 'unit/spec_helper'
86
-
87
- describe 'example' do
88
- it 'is true' do
89
- expect(true).to be true
90
- end
91
- end
92
- END
93
-
94
- cli.run([])
95
-
96
- File.read('spec/spec_helper.rb').should == <<-END
97
- RSpec.configure do |config|
98
- config.color = true
99
- end
100
- END
101
-
102
- File.read('spec/unit/spec_helper.rb').should == <<-END
103
- require 'spec_helper'
104
-
105
- RSpec.configure do |config|
106
- config.color = true
107
- end
108
- END
109
- end
110
- end
111
-
112
- describe 'yield_receiver_to_any_instance_implementation_blocks' do
113
- let(:spec_helper_path) { 'spec/spec_helper.rb' }
114
-
115
- before do
116
- create_file(spec_helper_path, <<-END)
117
- RSpec.configure do |config|
118
- end
119
- END
120
- end
121
-
122
- [
123
- 'Object.any_instance.stub(:message)',
124
- 'Object.any_instance.should_receive(:message)',
125
- 'allow_any_instance_of(Object).to receive(:message)',
126
- 'expect_any_instance_of(Object).to receive(:message)'
127
- ].each do |syntax|
128
- context "when there's a #{syntax} block to convert" do
129
- before do
130
- create_file('spec/example_spec.rb', <<-END)
131
- describe 'example' do
132
- it 'responds to #message' do
133
- #{syntax} do |arg|
134
- end
135
- end
136
- end
137
- END
138
- end
139
-
140
- it 'adds yield_receiver_to_any_instance_implementation_blocks to the RSpec.configure' do
141
- cli.project.stub(:rspec_version).and_return(RSpecVersion.new('2.99.0'))
142
- cli.run([])
143
-
144
- File.read(spec_helper_path).should == <<-END
145
- RSpec.configure do |config|
146
- config.mock_with :rspec do |mocks|
147
- # In RSpec 3, `any_instance` implementation blocks will be yielded the receiving
148
- # instance as the first block argument to allow the implementation block to use
149
- # the state of the receiver.
150
- # In RSpec 2.99, to maintain compatibility with RSpec 3 you need to either set
151
- # this config option to `false` OR set this to `true` and update your
152
- # `any_instance` implementation blocks to account for the first block argument
153
- # being the receiving instance.
154
- mocks.yield_receiver_to_any_instance_implementation_blocks = true
155
- end
156
- end
157
- END
158
- end
159
- end
160
- end
161
-
162
- context "when there's no any_instance blocks to convert" do
163
- before do
164
- create_file('spec/example_spec.rb', <<-END)
165
- describe 'example' do
166
- it 'responds to #foo' do
167
- Object.any_instance.stub(:foo) do
168
- end
169
- end
170
- end
171
- END
172
- end
173
-
174
- it 'does not modify RSpec.configure' do
175
- cli.project.stub(:rspec_version).and_return(RSpecVersion.new('2.99.0'))
176
- cli.run([])
177
-
178
- File.read(spec_helper_path).should == <<-END
179
- RSpec.configure do |config|
180
- end
181
- END
182
- end
183
- end
184
- end
185
- end
186
- end
@@ -1,145 +0,0 @@
1
- # coding: utf-8
2
-
3
- require 'spec_helper'
4
- require 'transpec/cli'
5
-
6
- module Transpec
7
- describe 'conversion' do
8
- include FileHelper
9
- include_context 'isolated environment'
10
-
11
- let(:cli) do
12
- DynamicAnalyzer.any_instance.stub(:silent?).and_return(true)
13
- cli = CLI.new
14
- cli.stub(:puts)
15
- cli
16
- end
17
-
18
- let(:spec_path) { 'spec/example_spec.rb' }
19
-
20
- let(:converted_source) do
21
- create_file(spec_path, source)
22
- cli.run([])
23
- File.read(spec_path)
24
- end
25
-
26
- describe 'one-liner expectation with have(n).items matcher' do
27
- let(:source) do
28
- <<-END
29
- class Team
30
- def players
31
- [:foo, :bar, :baz]
32
- end
33
- end
34
-
35
- describe 'example' do
36
- describe 'collection' do
37
- subject { [:foo, :bar, :baz] }
38
-
39
- it { should have(3).items }
40
- end
41
-
42
- describe 'owner of collection' do
43
- subject { Team.new }
44
-
45
- it { should have_at_least(3).players }
46
- end
47
- end
48
- END
49
- end
50
-
51
- let(:expected_source) do
52
- <<-END
53
- class Team
54
- def players
55
- [:foo, :bar, :baz]
56
- end
57
- end
58
-
59
- describe 'example' do
60
- describe 'collection' do
61
- subject { [:foo, :bar, :baz] }
62
-
63
- it 'has 3 items' do
64
- expect(subject.size).to eq(3)
65
- end
66
- end
67
-
68
- describe 'owner of collection' do
69
- subject { Team.new }
70
-
71
- it 'has at least 3 players' do
72
- expect(subject.players.size).to be >= 3
73
- end
74
- end
75
- end
76
- END
77
- end
78
-
79
- it 'is converted properly' do
80
- converted_source.should == expected_source
81
- end
82
-
83
- context 'with #its' do
84
- let(:source) do
85
- <<-END
86
- describe 'example' do
87
- subject { 'foo' }
88
- its(:chars) { should have(3).items }
89
- end
90
- END
91
- end
92
-
93
- let(:expected_source) do
94
- <<-END
95
- describe 'example' do
96
- subject { 'foo' }
97
-
98
- describe '#chars' do
99
- subject { super().chars }
100
-
101
- it 'has 3 items' do
102
- expect(subject.size).to eq(3)
103
- end
104
- end
105
- end
106
- END
107
- end
108
-
109
- it 'is converted properly' do
110
- converted_source.should == expected_source
111
- end
112
- end
113
- end
114
-
115
- describe 'one-liner expectation with operator matcher' do
116
- context 'in RSpec 2.99.0.beta2 or later' do
117
- before do
118
- cli.project.stub(:rspec_version).and_return(RSpecVersion.new('2.99.0.beta2'))
119
- end
120
-
121
- let(:source) do
122
- <<-END
123
- describe 'example' do
124
- subject { 1 }
125
- it { should == 1 }
126
- end
127
- END
128
- end
129
-
130
- let(:expected_source) do
131
- <<-END
132
- describe 'example' do
133
- subject { 1 }
134
- it { is_expected.to eq(1) }
135
- end
136
- END
137
- end
138
-
139
- it 'is converted properly' do
140
- converted_source.should == expected_source
141
- end
142
- end
143
- end
144
- end
145
- end