class TestGatherMethods(HarvestFixtureBase): def setup(self): HarvestFixtureBase.setup(self) # Create source source_fixture = { 'title': 'Test Source', 'name': 'test-source', 'url': u'http://127.0.0.1:8999/gemini2.1/dataset1.xml', 'source_type': u'gemini-single' } source, job = self._create_source_and_job(source_fixture) self.harvester = GeminiHarvester() self.harvester.harvest_job = job def teardown(self): model.repo.rebuild_db() def test_get_gemini_string_and_guid(self): res = self.harvester.get_gemini_string_and_guid(BASIC_GEMINI, url=None) assert_equal(res, (BASIC_GEMINI, GUID)) def test_get_gemini_string_and_guid__no_guid(self): res = self.harvester.get_gemini_string_and_guid(GEMINI_MISSING_GUID, url=None) assert_equal(res, (GEMINI_MISSING_GUID, '')) def test_get_gemini_string_and_guid__non_parsing(self): content = '<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco">' # no closing tag assert_raises(lxml.etree.XMLSyntaxError, self.harvester.get_gemini_string_and_guid, content) def test_get_gemini_string_and_guid__empty(self): content = '' assert_raises(lxml.etree.XMLSyntaxError, self.harvester.get_gemini_string_and_guid, content)
class TestGatherMethods(HarvestFixtureBase): def setup(self): HarvestFixtureBase.setup(self) # Create source source_fixture = { 'title': 'Test Source', 'name': 'test-source', 'url': u'http://127.0.0.1:8999/gemini2.1/dataset1.xml', 'source_type': u'gemini-single' } source, job = self._create_source_and_job(source_fixture) self.harvester = GeminiHarvester() self.harvester.harvest_job = job def teardown(self): model.repo.rebuild_db() def test_get_gemini_string_and_guid(self): res = self.harvester.get_gemini_string_and_guid(BASIC_GEMINI, url=None) assert_equal(res, (BASIC_GEMINI, GUID)) def test_get_gemini_string_and_guid__no_guid(self): res = self.harvester.get_gemini_string_and_guid(GEMINI_MISSING_GUID, url=None) assert_equal(res, (GEMINI_MISSING_GUID, '')) def test_get_gemini_string_and_guid__non_parsing(self): content = '<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco">' # no closing tag assert_raises(lxml.etree.XMLSyntaxError, self.harvester.get_gemini_string_and_guid, content) def test_get_gemini_string_and_guid__empty(self): content = '' assert_raises(lxml.etree.XMLSyntaxError, self.harvester.get_gemini_string_and_guid, content)