def analyze_test(testklassname)
klassname = self.convert_class_name(testklassname)
if $stdlib[klassname] then
self.process_class(klassname, true)
self.analyze_impl(klassname)
end
if @klasses[klassname] then
methods, testmethods = methods_and_tests(klassname,testklassname)
testmethods.each_key do | testmethodname |
if testmethodname =~ /^test_(?!integration_)/ then
methodname = test_to_normal(testmethodname, klassname)
orig_name = methodname.dup
found = false
until methodname == "" or methods[methodname] or @inherited_methods[klassname][methodname] do
if methodname.sub!(/_[^_]+$/, '') then
if methods[methodname] or @inherited_methods[klassname][methodname] then
found = true
end
else
break
end
end
unless found or methods[methodname] or methodname == "initialize" then
self.add_missing_method(klassname, orig_name)
end
else
unless testmethodname =~ /^util_/ then
puts "# WARNING Skipping #{testklassname}\##{testmethodname}" if $DEBUG
end
end
end
else
puts "# ERROR class #{klassname} does not exist" if $DEBUG
@error_count += 1
@test_klasses[testklassname].keys.each do |testmethodname|
@missing_methods[klassname][test_to_normal(testmethodname)] = true
end
end
end