transpec 0.1.3 → 0.2.0
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.
- 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)
         |