Adjust HpricotMapperTest to not cause an error when the Hpricot library is not installed

git-svn-id: https://svn.apache.org/repos/asf/lucene/solr/trunk@540696 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Erik Hatcher 2007-05-22 18:52:55 +00:00
parent a69eeb2674
commit 502b3248d6
1 changed files with 26 additions and 22 deletions

View File

@ -10,31 +10,35 @@
# See the License for the specific language governing permissions and
# limitations under the License.
require 'solr'
require 'test/unit'
require 'hpricot'
begin
require 'solr'
require 'test/unit'
require 'hpricot'
class HpricotMapperTest < Test::Unit::TestCase
class HpricotMapperTest < Test::Unit::TestCase
def setup
@doc = open(File.expand_path(File.dirname(__FILE__)) + "/hpricot_test_file.xml"){|f| Hpricot.XML(f)}
end
def setup
@doc = open(File.expand_path(File.dirname(__FILE__)) + "/hpricot_test_file.xml"){|f| Hpricot.XML(f)}
end
def test_simple_hpricot_path
mapping = {:field1 => :'child[@attribute="attribute1"]',
:field2 => :'child[@attribute="attribute2"]',
:field3 => :'child[@attribute="attribute3"]',
:field4 => :'child[@attribute="attribute3"] grandchild',
:field5 => :'child'}
def test_simple_hpricot_path
mapping = {:field1 => :'child[@attribute="attribute1"]',
:field2 => :'child[@attribute="attribute2"]',
:field3 => :'child[@attribute="attribute3"]',
:field4 => :'child[@attribute="attribute3"] grandchild',
:field5 => :'child'}
mapper = Solr::Importer::HpricotMapper.new(mapping)
mapped_data = mapper.map(@doc)
mapper = Solr::Importer::HpricotMapper.new(mapping)
mapped_data = mapper.map(@doc)
assert_equal ['text1'], mapped_data[:field1]
assert_equal ['text2'], mapped_data[:field2]
assert_equal ['text3<grandchild>grandchild 3 text</grandchild>'], mapped_data[:field3]
assert_equal ['grandchild 3 text'], mapped_data[:field4]
assert_equal ['text1', 'text2', 'text3<grandchild>grandchild 3 text</grandchild>'], mapped_data[:field5]
end
assert_equal ['text1'], mapped_data[:field1]
assert_equal ['text2'], mapped_data[:field2]
assert_equal ['text3<grandchild>grandchild 3 text</grandchild>'], mapped_data[:field3]
assert_equal ['grandchild 3 text'], mapped_data[:field4]
assert_equal ['text1', 'text2', 'text3<grandchild>grandchild 3 text</grandchild>'], mapped_data[:field5]
end
end
end
rescue LoadError => e
puts "HpricotMapperTest not run because #{e}"
end