Exemplo n.º 1
0
    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)
Exemplo n.º 2
0
    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)