def test_providers_overdrive(self): # For an Overdrive collection... collection = MockOverdriveAPI.mock_collection(self._db) # In lieu of a proper mock API, create one that will crash # if it tries to make a real HTTP request. mock_content_cafe = ContentCafeAPI(self._db, None, object(), object(), self.uploader) resolver = IdentifierResolutionCoverageProvider( collection, overdrive_api_class=MockOverdriveAPI, content_cafe_api=mock_content_cafe, uploader=self.uploader) # We get three required coverage providers: Content Cafe, OCLC # Classify, and Overdrive. optional, [content_cafe, oclc_classify, overdrive] = resolver.providers() eq_([], optional) assert isinstance(content_cafe, ContentCafeCoverageProvider) assert isinstance(oclc_classify, OCLCClassifyCoverageProvider) assert isinstance(overdrive, OverdriveBibliographicCoverageProvider)
def test_providers_opds(self): # For an OPDS collection that goes against the open-access content # server... self._default_collection.external_integration.set_setting( Collection.DATA_SOURCE_NAME_SETTING, DataSource.OA_CONTENT_SERVER) uploader = object() # In lieu of a proper mock API, create one that will crash # if it tries to make a real HTTP request. mock_content_cafe = ContentCafeAPI(self._db, None, object(), object(), self.uploader) resolver = IdentifierResolutionCoverageProvider( self._default_collection, content_cafe_api=mock_content_cafe, uploader=uploader) # We get three required coverage providers: Content Cafe, OCLC # Classify, and OPDS Lookup Protocol. optional, [content_cafe, oclc_classify, opds] = resolver.providers() eq_([], optional) assert isinstance(content_cafe, ContentCafeCoverageProvider) assert isinstance(oclc_classify, OCLCClassifyCoverageProvider) assert isinstance(opds, LookupClientCoverageProvider) eq_(mock_content_cafe, content_cafe.content_cafe) eq_(self._default_collection, opds.collection)