[rspec-users] autotest failing on startup

David Chelimsky dchelimsky at gmail.com
Thu Jul 3 14:39:45 EDT 2008


On Jul 3, 2008, at 1:19 PM, Don French wrote:

> Mahalo for the information. I am using version 1.1.4 of rspec.
>
> Is there a list somewhere for autotest?

No list that I know of, but there's a tracker: http://rubyforge.org/projects/zentest


>
>
> Don French
>
> David Chelimsky-2 wrote:
>>
>> On Jul 3, 2008, at 3:08 AM, Don French wrote:
>>
>>> I have been using autotest/zentest 3.5.0  with my rails 2.0.2 and
>>> rspec. I
>>> upgraded my gems and got 3.9.3 and had a problem. I went back to
>>> 3.5.0 and
>>> it worked. I stayed there until moving to rails 2.1. I again updated
>>> my gems
>>> and got 3.10. This one had the same problem. This time I need to
>>> figure out
>>> what is wrong. Here is what I get:
>>>
>>> /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:394:in
>>> `find_files_to_test': undefined method `values' for #<Array: 
>>> 0x18b2530>
>>> (NoMethodError)
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 239:in
>>> `run_tests'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 228:in
>>> `get_to_green'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 208:in
>>> `run'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 206:in
>>> `loop'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 206:in
>>> `run'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/lib/autotest.rb:
>>> 136:in
>>> `run'
>>> 	from /Library/Ruby/Gems/1.8/gems/ZenTest-3.10.0/bin/autotest:55
>>> 	from /usr/bin/autotest:19:in `load'
>>> 	from /usr/bin/autotest:19
>>
>> This is all autotest so I don't think it's related to rspec. That
>> said, what version of rspec are you using?
>>
>>> Here is the failing code:
>>>
>>> def find_files
>>>   result = {}
>>>   targets = self.find_directories + self.extra_files
>>>   self.find_order.clear
>>>
>>>   targets.each do |target|
>>>     order = []
>>>     Find.find(target) do |f|
>>>       Find.prune if f =~ self.exceptions
>>>
>>>       next if test ?d, f
>>>       next if f =~ /(swp|~|rej|orig)$/ # temporary/patch files
>>>       next if f =~ /\/\.?#/            # Emacs autosave/cvs merge
>>> files
>>>
>>>       filename = f.sub(/^\.\//, '')
>>>
>>>       result[filename] = File.stat(filename).mtime rescue next
>>>       order << filename
>>>     end
>>>     self.find_order.push(*order.sort)
>>>   end
>>>   return result  # this should return as a hash but is received as  
>>> an
>>> array
>>> end
>>>
>>> ##
>>> # Find the files which have been modified, update the recorded
>>> # timestamps, and use this to update the files to test. Returns true
>>> # if any file is newer than the previously recorded most recent
>>> # file.
>>>
>>> def find_files_to_test(files=find_files)
>>>   # for some reason files comes in as a array needs to be hash
>>>   #myfiles = {}
>>>   #files.each do |key, value|
>>>     #myfiles[key] = value
>>>   #end
>>>   #files = myfiles
>>>   updated = files.select { |filename, mtime| self.last_mtime <
>>> mtime }
>>>
>>>   p updated if $v unless updated.empty? or self.last_mtime.to_i == 0
>>>
>>>   updated.map { |f,m| test_files_for(f) }.flatten.uniq.each do |
>>> filename|
>>>     self.files_to_test[filename] # creates key with default value
>>>   end
>>>
>>>   if updated.empty? then
>>>     nil
>>>   else
>>>     files.values.max  <= line 394
>>>   end
>>> end
>>>
>>> For some reason the files is an array instead of a hash.  I added
>>> the little
>>> change that is commented out and it works. But that should not have
>>> to be
>>> done.
>>>
>>> Any ideas?
>>>
>>>
>>> -- 
>>> View this message in context:
>>> http://www.nabble.com/autotest-failing-on-startup-tp18246365p18246365.html
>>> Sent from the rspec-users mailing list archive at Nabble.com.
>>>
>>> _______________________________________________
>>> rspec-users mailing list
>>> rspec-users at rubyforge.org
>>> http://rubyforge.org/mailman/listinfo/rspec-users
>>
>> _______________________________________________
>> rspec-users mailing list
>> rspec-users at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/rspec-users
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/autotest-failing-on-startup-tp18246365p18265467.html
> Sent from the rspec-users mailing list archive at Nabble.com.
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users



More information about the rspec-users mailing list