7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/atom/test.rb', line 7
def self.create_test_for!(what)
test_case = Class.new(::Test::Unit::TestCase)
self.collect_test_files_for(what).each do |test_file|
test_case.class_eval do
method_name = "test_#{File.basename(test_file).sub('.rb','')}"
define_method(method_name) do
test_file_content = File.read(test_file)
test_data, assertion = eval("#{test_file_content};[xml, test]")
element =
if Atom::Feed.respond_to?(:parse)
Atom::Feed.parse(test_data)
else
Atom::Feed.new(test_data)
end
assertion.call(element)
end
end
end
end
|