spec/autotest/rspec_spec.rb in rspec-1.1.2 vs spec/autotest/rspec_spec.rb in rspec-1.1.3

- old
+ new

@@ -86,15 +86,14 @@ before :each do common_setup end it "should use the ALT_SEPARATOR if it is non-nil" do - pending("autotest got re-worked so this is failing for the moment") @rspec_autotest = Rspec.new spec_command = File.expand_path("#{File.dirname(__FILE__)}/../../bin/spec") @rspec_autotest.stub!(:spec_commands).and_return [spec_command] - @rspec_autotest.spec_command.should == spec_command.gsub('/', '\\') + @rspec_autotest.spec_command(@windows_alt_separator).should == spec_command.gsub('/', @windows_alt_separator) end it "should not use the ALT_SEPATOR if it is nil" do @windows_alt_separator = nil @rspec_autotest = Rspec.new @@ -141,97 +140,29 @@ it "should make the apropriate test command" do @rspec_autotest.make_test_cmd(@files_to_test).should == "#{@ruby} -S #{@spec_command} #{@options} #{@to_test}" end end - describe Rspec, "test mappings" do - before :each do - @rspec_autotest = Rspec.new - @rspec_autotest.hook :initialize - end - - it "should map all filenames in spec/ which end in .rb" do - @rspec_autotest.instance_eval{@test_mappings}.should have_key(%r%^spec/.*\.rb$%) - end + describe Rspec, "mappings" do - it "should map all names in lib which end in .rb to the corresponding ones in spec/" do - @rspec_autotest.instance_eval{@test_mappings}.should have_key(%r%^lib/(.*)\.rb$%) - end - - it "should find all files in spec/shares/* and the spec helper in spec/spec_helper" do - @rspec_autotest.instance_eval{@test_mappings}.should have_key(%r%^spec/(spec_helper|shared/.*)\.rb$%) - end - end - - describe Rspec, "handling results" do - include AutotestHelper - - before :each do - common_setup - @rspec_autotest = Rspec.new - @rspec_autotest.stub!(:hook) - - @results = mock String - @results.stub!(:scan).and_return "" - end - - it "should call hook(:red) if there are failures" do - @rspec_autotest.stub!(:consolidate_failures).and_return ["spec/some_spec.rb"] - - @rspec_autotest.should_receive(:hook).with(:red) - @rspec_autotest.handle_results(@results) - end - - it "should call hook(:green) if there are no failures" do - @rspec_autotest.stub!(:consolidate_failures).and_return [] - @rspec_autotest.should_receive(:hook).with(:green) - @rspec_autotest.handle_results(@results) - end - end - - describe Rspec, "handling failed results" do - include AutotestHelper - - before :each do - common_setup - end - - it %(should scan the output into a multi-dimensional array, - consisting of the failing spec's name as the first element, - and the failure as the second) do - @rspec_autotest = Rspec.new - @rspec_autotest.failed_results(@rspec_output).should == [ - [ - "false should be false", - "expected: true,\n got: false (using ==)\n./spec/autotest/rspec_spec.rb:203:" - ] - ] - end - end - - describe Rspec, "specs for a given file" do - before :each do + before(:each) do @lib_file = "lib/something.rb" @spec_file = "spec/something_spec.rb" @rspec_autotest = Rspec.new @rspec_autotest.hook :initialize - - @rspec_autotest.instance_variable_set("@files", {@lib_file => Time.now, @spec_file => Time.now}) - @rspec_autotest.stub!(:find_files_to_test).and_return true end it "should find the spec file for a given lib file" do - @rspec_autotest.specs_for_file(@lib_file).should == [@spec_file] + @rspec_autotest.should map_specs([@spec_file]).to(@lib_file) end it "should find the spec file if given a spec file" do - @rspec_autotest.specs_for_file(@spec_file).should == [@spec_file] + @rspec_autotest.should map_specs([@spec_file]).to(@spec_file) end it "should only find the file if the file is being tracked (in @file)" do - @other_file = "lib/some_non_tracked_file" - @rspec_autotest.specs_for_file(@other_file).should == [] + @rspec_autotest.should map_specs([]).to("lib/untracked_file") end end describe Rspec, "consolidating failures" do include AutotestHelper @@ -244,21 +175,21 @@ @rspec_autotest.instance_variable_set("@files", {@spec_file => Time.now}) @rspec_autotest.stub!(:find_files_to_test).and_return true end it "should return no failures if no failures were given in the output" do - @rspec_autotest.stub!(:failed_results).and_return [[]] - @rspec_autotest.consolidate_failures(@rspec_autotest.failed_results).should == {} + @rspec_autotest.consolidate_failures([[]]).should == {} end it "should return a hash with the spec filename => spec name for each failure or error" do - @rspec_autotest.stub!(:failed_results).and_return([ + @rspec_autotest.stub!(:test_files_for).and_return "./spec/autotest/rspec_spec.rb" + foo = [ [ "false should be false", "expected: true,\n got: false (using ==)\n./spec/autotest/rspec_spec.rb:203:" ] - ]) - @rspec_autotest.consolidate_failures(@rspec_autotest.failed_results).should == {@spec_file => ["false should be false"]} + ] + @rspec_autotest.consolidate_failures(foo).should == {@spec_file => ["false should be false"]} end end end