def test_is_upgraded_true(self, stub_bpl_solr_200_response, mock_datetime_now): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._is_upgraded("ocn971018433") == ( "971018433", datetime.datetime.now(), True, 2, )
def test_is_upgraded_false(self, arg, stub_bpl_solr_200_response, mock_datetime_now): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._is_upgraded(arg) == ( None, None, False, None, )
def test_map_data(self, stub_bpl_solr_200_response, mock_datetime_now): meta = SolrResponseReader(stub_bpl_solr_200_response).meta assert meta.sbid == 12014671 assert meta.sbn == "9780300226348,0300226349" assert meta.lcn == "111111" assert meta.did == "8A4A1B86-E456-48D3-99DA-DF8FAD8946F1" assert meta.sid == "222222,333333" assert meta.wcn is None assert meta.deleted is False assert meta.title == "reporting war : how foreign correspondents risked" assert meta.author == "moseley, ray, 1932-" assert meta.pubDate == "2017" assert meta.upgradeStamp is None assert meta.upgraded is False assert meta.upgradeSourceId is None assert meta.urls == [ { "uTypeId": 1, "url": "https://link.overdrive.com/?content", }, { "uTypeId": 2, "url": "https://samples.overdrive.com/?sample_url", }, { "uTypeId": 3, "url": "https://img1.od-cdn.com/ImageType-100/2390-1/%7B8A4A1B86-E456-48D3-99DA-DF8FAD8946F1%7DImg100.jpg", }, { "uTypeId": 4, "url": "https://img1.od-cdn.com/ImageType-200/2390-1/%7B8A4A1B86-E456-48D3-99DA-DF8FAD8946F1%7DImg200.jpg", }, ]
def test_parse_worldcat_number(self, arg, expectation, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._parse_worldcat_number(arg) == expectation
def test_is_deleted(self, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._is_deleted(reader.data) is False
def test_construct_thumbnail_url(self, arg, expectation, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._construct_thumbnail_url(arg) == expectation
def test_error_response(self, stub_bpl_solr_401_response): err_msg = "BPL Solr 401 error:" with pytest.raises(NightShiftError) as exc: SolrResponseReader(stub_bpl_solr_401_response) assert err_msg in str(exc.value)
def test_parse_publication_date(self, arg, expectation, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._parse_publication_date(arg) == expectation
def test_parse_sierra_format_id(self, arg, expectation, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._parse_sierra_format_id(arg) == expectation
def test_no_hits_response(self, stub_bpl_solr_no_hits_response): reader = SolrResponseReader(stub_bpl_solr_no_hits_response) assert reader.data is None
def test_successful_response(self, stub_bpl_solr_200_response, stub_solr_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader.data == stub_solr_response["response"]["docs"][0]
def test_parse_bib_id(self, stub_bpl_solr_200_response): reader = SolrResponseReader(stub_bpl_solr_200_response) assert reader._parse_bib_id(reader.data) == 12014671