From ae892691a44b35d5285b789589a4b9254ecb488b Mon Sep 17 00:00:00 2001 From: Scott Chamberlain Date: Thu, 11 Nov 2021 20:17:40 -0800 Subject: [PATCH] add tests for warn parameter --- Makefile | 2 +- habanero/crossref/crossref.py | 38 +- habanero/request.py | 54 +- habanero/request_class.py | 22 +- .../test_funders_bad_id_warn.yaml | 53 + .../test_funders_bad_id_works_warn.yaml | 55 + .../test_funders_mixed_ids_warn.yaml | 125 ++ .../test_funders_mixed_ids_works_warn.yaml | 667 ++++++++++ .../test_journals_bad_id_warn.yaml | 53 + .../test_journals_bad_id_works_warn.yaml | 55 + .../test_journals_mixed_ids_warn.yaml | 126 ++ .../test_journals_mixed_ids_works_warn.yaml | 1091 +++++++++++++++++ .../test_members_bad_id_warn.yaml | 53 + .../test_members_bad_id_works_warn.yaml | 55 + .../test_members_mixed_ids_warn.yaml | 148 +++ .../test_members_mixed_ids_works_warn.yaml | 666 ++++++++++ .../test_prefixes_bad_id_warn.yaml | 55 + .../test_prefixes_bad_id_works_warn.yaml | 55 + .../test_prefixes_mixed_ids_warn.yaml | 109 ++ .../test_prefixes_mixed_ids_works_warn.yaml | 168 +++ test/cassettes/test-types/test_types.yaml | 20 +- .../test-types/test_types_bad_id_warn.yaml | 55 + .../test_types_bad_id_works_warn.yaml | 55 + test/cassettes/test-types/test_types_ids.yaml | 2 +- .../test-types/test_types_mixed_ids_warn.yaml | 109 ++ .../test_types_mixed_ids_works_warn.yaml | 239 ++++ .../test-types/test_types_query.yaml | 20 +- ...query_filters_not_allowed_with_typeid.yaml | 2 +- .../test-types/test_types_works.yaml | 24 +- .../test-works/test_works_bad_id_warn.yaml | 53 + .../test-works/test_works_mixed_ids_warn.yaml | 232 ++++ test/test-funders.py | 35 +- test/test-journals.py | 35 +- test/test-members.py | 35 +- test/test-prefixes.py | 35 +- test/test-types.py | 40 +- test/test-works.py | 21 +- 37 files changed, 4594 insertions(+), 68 deletions(-) create mode 100644 test/cassettes/test-funders/test_funders_bad_id_warn.yaml create mode 100644 test/cassettes/test-funders/test_funders_bad_id_works_warn.yaml create mode 100644 test/cassettes/test-funders/test_funders_mixed_ids_warn.yaml create mode 100644 test/cassettes/test-funders/test_funders_mixed_ids_works_warn.yaml create mode 100644 test/cassettes/test-journals/test_journals_bad_id_warn.yaml create mode 100644 test/cassettes/test-journals/test_journals_bad_id_works_warn.yaml create mode 100644 test/cassettes/test-journals/test_journals_mixed_ids_warn.yaml create mode 100644 test/cassettes/test-journals/test_journals_mixed_ids_works_warn.yaml create mode 100644 test/cassettes/test-members/test_members_bad_id_warn.yaml create mode 100644 test/cassettes/test-members/test_members_bad_id_works_warn.yaml create mode 100644 test/cassettes/test-members/test_members_mixed_ids_warn.yaml create mode 100644 test/cassettes/test-members/test_members_mixed_ids_works_warn.yaml create mode 100644 test/cassettes/test-prefixes/test_prefixes_bad_id_warn.yaml create mode 100644 test/cassettes/test-prefixes/test_prefixes_bad_id_works_warn.yaml create mode 100644 test/cassettes/test-prefixes/test_prefixes_mixed_ids_warn.yaml create mode 100644 test/cassettes/test-prefixes/test_prefixes_mixed_ids_works_warn.yaml create mode 100644 test/cassettes/test-types/test_types_bad_id_warn.yaml create mode 100644 test/cassettes/test-types/test_types_bad_id_works_warn.yaml create mode 100644 test/cassettes/test-types/test_types_mixed_ids_warn.yaml create mode 100644 test/cassettes/test-types/test_types_mixed_ids_works_warn.yaml create mode 100644 test/cassettes/test-works/test_works_bad_id_warn.yaml create mode 100644 test/cassettes/test-works/test_works_mixed_ids_warn.yaml diff --git a/Makefile b/Makefile index fe062b3..e6603f0 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ test: pytest --record-mode=once --cov-report term --cov=habanero test/ test_no_vcr: - pytest --disable-vcr --cov-report term --cov=habanero test/ + pytest --disable-recording --cov-report term --cov=habanero test/ docs: cd docs;\ diff --git a/habanero/crossref/crossref.py b/habanero/crossref/crossref.py index 4b499ae..6cb89cb 100644 --- a/habanero/crossref/crossref.py +++ b/habanero/crossref/crossref.py @@ -206,6 +206,7 @@ def works( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -247,6 +248,9 @@ def works( found than this value, you will get only those found. :param progress_bar: [Boolean] print progress bar. only used when doing deep paging ( when using cursor parameter). default: False + :param warn: [Boolean] warn instead of raise error upon HTTP request error. default: False + Especially helpful when passing in many DOIs where some may lead to request failures. + Returns `None` when `warn=True` for each DOI that errors. :param kwargs: additional named arguments passed on to `requests.get`, e.g., field queries (see examples and FieldQueries_) @@ -357,6 +361,7 @@ def works( None, None, progress_bar, + warn, **kwargs ) else: @@ -379,7 +384,7 @@ def works( None, progress_bar, **kwargs - ).do_request() + ).do_request(should_warn=warn) def members( self, @@ -397,6 +402,7 @@ def members( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -440,6 +446,9 @@ def members( found than this value, you will get only those found. Only used if `works=True` :param progress_bar: [Boolean] print progress bar. only used when doing deep paging ( when using cursor parameter). Only used if `works=True`. default: False + :param warn: [Boolean] warn instead of raise error upon HTTP request error. default: False + Especially helpful when passing in many DOIs where some may lead to request failures. + Returns `None` when `warn=True` for each DOI that errors. :param kwargs: additional named arguments passed on to `requests.get`, e.g., field queries (see examples and FieldQueries_) @@ -492,6 +501,7 @@ def members( cursor_max, None, progress_bar, + warn, **kwargs ) @@ -510,6 +520,7 @@ def prefixes( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -550,6 +561,9 @@ def prefixes( found than this value, you will get only those found. Only used if `works=True` :param progress_bar: [Boolean] print progress bar. only used when doing deep paging ( when using cursor parameter). Only used if `works=True`. default: False + :param warn: [Boolean] warn instead of raise error upon HTTP request error. default: False + Especially helpful when passing in many DOIs where some may lead to request failures. + Returns `None` when `warn=True` for each DOI that errors. :param kwargs: additional named arguments passed on to `requests.get`, e.g., field queries (see examples and FieldQueries_) @@ -605,6 +619,7 @@ def prefixes( cursor=cursor, cursor_max=cursor_max, progress_bar=progress_bar, + should_warn=warn, **kwargs ) @@ -624,6 +639,7 @@ def funders( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -670,6 +686,9 @@ def funders( found than this value, you will get only those found. Only used if `works=True` :param progress_bar: [Boolean] print progress bar. only used when doing deep paging ( when using cursor parameter). Only used if `works=True`. default: False + :param warn: [Boolean] warn instead of raise error upon HTTP request error. default: False + Especially helpful when passing in many DOIs where some may lead to request failures. + Returns `None` when `warn=True` for each DOI that errors. :param kwargs: additional named arguments passed on to `requests.get`, e.g., field queries (see examples and FieldQueries_) @@ -701,6 +720,15 @@ def funders( # filters (as of this writing, only 1 filter is avail., "location") cr.funders(filter = {'location': "Sweden"}) + + # warn + cr.funders(ids = '10.13039/notarealdoi') + cr.funders(ids = '10.13039/notarealdoi', warn=True) + cr.funders(ids = '10.13039/notarealdoi', works=True, warn=True) + cr.funders(ids = ['10.13039/100000001','10.13039/notarealdoi'], works=True, warn=True) + x = cr.funders(ids = ['10.13039/100000001','10.13039/notarealdoi'], warn=True) + len(x) # 2 + [type(w) for w in x] # [dict, NoneType] """ return request( self.mailto, @@ -722,6 +750,7 @@ def funders( cursor_max, None, progress_bar, + warn, **kwargs ) @@ -741,6 +770,7 @@ def journals( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -782,6 +812,9 @@ def journals( found than this value, you will get only those found. Only used if `works=True` :param progress_bar: [Boolean] print progress bar. only used when doing deep paging ( when using cursor parameter). Only used if `works=True`. default: False + :param warn: [Boolean] warn instead of raise error upon HTTP request error. default: False + Especially helpful when passing in many DOIs where some may lead to request failures. + Returns `None` when `warn=True` for each DOI that errors. :param kwargs: additional named arguments passed on to `requests.get`, e.g., field queries (see examples and FieldQueries_) @@ -843,6 +876,7 @@ def journals( cursor_max, None, progress_bar, + warn, **kwargs ) @@ -862,6 +896,7 @@ def types( cursor=None, cursor_max=5000, progress_bar=False, + warn=False, **kwargs ): """ @@ -946,6 +981,7 @@ def types( cursor_max, None, progress_bar, + warn, **kwargs ) diff --git a/habanero/request.py b/habanero/request.py index ea893b0..540fa12 100644 --- a/habanero/request.py +++ b/habanero/request.py @@ -1,6 +1,7 @@ import requests import json import re +import warnings from .filterhandler import filter_handler from .habanero_utils import ( @@ -37,9 +38,10 @@ def request( cursor_max=None, agency=False, progress_bar=False, + should_warn=False, **kwargs ): - + warning_thrown = False url = url + path if cursor_max.__class__.__name__ != "NoneType": @@ -92,6 +94,7 @@ def request( ids = ids.split() if ids.__class__.__name__ == "int": ids = [ids] + # should_warn = len(ids) > 1 coll = [] for i in range(len(ids)): if works: @@ -114,7 +117,7 @@ def request( None, progress_bar, **kwargs - ).do_request() + ).do_request(should_warn = should_warn) coll.append(res) else: if agency: @@ -124,21 +127,40 @@ def request( endpt = endpt.strip("/") - try: - r = requests.get( - endpt, params=payload, headers=make_ua(mailto, ua_string) - ) + r = requests.get( + endpt, params=payload, headers=make_ua(mailto, ua_string) + ) + if r.status_code > 201 and should_warn: + warning_thrown = True + mssg = '%s on %s: %s' % (r.status_code, ids[i], r.reason) + warnings.warn(mssg) + else: r.raise_for_status() - except requests.exceptions.HTTPError: - if is_json(r): - raise RequestError(r.status_code, parse_json_err(r)) - else: - r.raise_for_status() - except requests.exceptions.RequestException as e: - raise e - check_json(r) - js = r.json() - coll.append(js) + + # try: + # r = requests.get( + # endpt, params=payload, headers=make_ua(mailto, ua_string) + # ) + # if r.status_code > 201 and should_warn: + # warning_thrown = True + # mssg = '%s on %s: %s' % (r.status_code, ids[i], r.reason) + # warnings.warn(mssg) + # else: + # r.raise_for_status() + # except requests.exceptions.HTTPError: + # if is_json(r): + # raise RequestError(r.status_code, parse_json_err(r)) + # else: + # r.raise_for_status() + # except requests.exceptions.RequestException as e: + # raise e + + if warning_thrown: + coll.append(None) + else: + check_json(r) + js = r.json() + coll.append(js) if len(coll) == 1: coll = coll[0] diff --git a/habanero/request_class.py b/habanero/request_class.py index 44c9282..55727cf 100644 --- a/habanero/request_class.py +++ b/habanero/request_class.py @@ -3,6 +3,7 @@ import re import math from tqdm import tqdm +import warnings from .filterhandler import filter_handler from .habanero_utils import ( @@ -69,7 +70,7 @@ def _url(self): tmpurl = self.url + self.path return tmpurl.strip("/") - def do_request(self): + def do_request(self, should_warn = False): filt = filter_handler(self.filter) if self.select.__class__ is list: self.select = ",".join(self.select) @@ -100,13 +101,15 @@ def do_request(self): # rename query filters payload = rename_query_filters(payload) - js = self._req(payload=payload) + js = self._req(payload=payload, should_warn = should_warn) + if js is None: + return js cu = js["message"].get("next-cursor") max_avail = js["message"]["total-results"] - res = self._redo_req(js, payload, cu, max_avail) + res = self._redo_req(js, payload, cu, max_avail, should_warn) return res - def _redo_req(self, js, payload, cu, max_avail): + def _redo_req(self, js, payload, cu, max_avail, should_warn): if cu.__class__.__name__ != "NoneType" and self.cursor_max > len( js["message"]["items"] ): @@ -129,7 +132,7 @@ def _redo_req(self, js, payload, cu, max_avail): and total < max_avail ): payload["cursor"] = cu - out = self._req(payload=payload) + out = self._req(payload=payload, should_warn = should_warn) cu = out["message"].get("next-cursor") res.append(out) total = sum([len(z["message"]["items"]) for z in res]) @@ -141,7 +144,7 @@ def _redo_req(self, js, payload, cu, max_avail): else: return js - def _req(self, payload): + def _req(self, payload, should_warn): try: r = requests.get( self._url(), @@ -154,7 +157,12 @@ def _req(self, payload): f = r.json() raise RequestError(r.status_code, f["message"][0]["message"]) except: - r.raise_for_status() + if should_warn: + mssg = '%s: %s' % (r.status_code, r.reason) + warnings.warn(mssg) + return None + else: + r.raise_for_status() except requests.exceptions.RequestException as e: print(e) check_json(r) diff --git a/test/cassettes/test-funders/test_funders_bad_id_warn.yaml b/test/cassettes/test-funders/test_funders_bad_id_warn.yaml new file mode 100644 index 0000000..d7036d5 --- /dev/null +++ b/test/cassettes/test-funders/test_funders_bad_id_warn.yaml @@ -0,0 +1,53 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/notarealdoi + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:36:17 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-funders/test_funders_bad_id_works_warn.yaml b/test/cassettes/test-funders/test_funders_bad_id_works_warn.yaml new file mode 100644 index 0000000..0f165ea --- /dev/null +++ b/test/cassettes/test-funders/test_funders_bad_id_works_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/notarealdoi/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Sun, 07 Nov 2021 15:36:55 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-funders/test_funders_mixed_ids_warn.yaml b/test/cassettes/test-funders/test_funders_mixed_ids_warn.yaml new file mode 100644 index 0000000..97aaa62 --- /dev/null +++ b/test/cassettes/test-funders/test_funders_mixed_ids_warn.yaml @@ -0,0 +1,125 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/100000001 + response: + body: + string: !!binary | + H4sIAAAAAAAAAIVW32/aMBD+V6I8A3V+OA68tVu7Tdq6aazSpLYPXmLAKtjIcdYhxP++c0Liyxo0 + HtDH4fvu/Pnsu2NYWW7rKlyE+iWchDtRVXwtpvawF2Bb1aoUBtl/C1NJreCvaEZmxP8TLo7hRgrD + TbE5TBUHszNFhJCIZCQHj6+rlSxEoFfBJ1XtRWG1CT4IBT5b4HErYS2bD1bajQjeS9MsPi+K0jSK + YNE7oawwwQpYHtSOKyXK4FqawvCVDZaHyopd1fFSFmXgcs8tJM+3wbKQQkGEG81N2QcnuePtwnEr + GvLbsi4av4CrMvhYQ6jgu6h0bQpRId9kxPed3u1rl6Vz/aTAtGupugSc/VatpRLCSLXutkjziALd + N/0Kvue94HUuAeGkDloV+n2CNgP9bupyLewkuJOKd/GuX2HTwReu4Nh24O73QKIxke40VEFj9CtZ + NrLbG6m3ei0L74v1Sce0fbv1lLAEZ3HPlbai2CjHfQBFtSlhM9ap0O6z96Rzlz9k8fPu9vNA4h+I + YCAY5JWP5LXUheTbSXAjNvy3BPu2PalCK72TxZvtge7snwr3Z+08u4IZlT0fE/MLh9p3DMU5+LfN + obqkLR0h+CB0NVzptI2xtl5MSPMs5mkSGrHf8kKU01+HcPH4PAlftXmZFlAGNlzENEvjeBK6K/7f + ailFVQj4qSy8Bo+oeHwhMYTzwVX0OB5cM1xSWAKsp8dscNQez/2bQyjC3jeKfQ5RinGCcIow4kkR + T8oQzhFGOVCCMIpFY4RRXIriUhSXorgU8WeIP0OcGeLMEGeGODPEmSFOhjgZypkhfob4GeJniB/V + Q4TqIUL14PoCfuM8jhFOEE4RpghnCDOEc4RRLH8ulHr9AXt+FmGcIdzzZ2Te55xlpOdhiT9fRn29 + Acb2bn3bSf1ljhCOEU4QTnvs2iZ+KnGvecZ3dYrvexKTLKaTUJau6ZP245ytfhGqudbq/AaA8fzi + AFrhd6CuOHyratV/19UZPvfvTdU+NrWREGlj7X7xdPV0Vf6ZlVrOtFk/XUVkFiUkmTvkE+nHjm7g + aP8YTh/H02DEOIY7beD9sqYWp8Fc0S9sZwbv10wHI36k7f1jjG0b94xNdx6ncA31Anl6Id2mUR5P + +EgH6ebjjG2vuhDrchb0YhaxC3sCA9/abvJ7DB+W18H98g7Op/1+WDY/4YC3up2n4JQflLQwti1h + BgWv0+kvRPwPXo8KAAA= + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '926' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:36:55 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/notarealdoi + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:36:55 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-funders/test_funders_mixed_ids_works_warn.yaml b/test/cassettes/test-funders/test_funders_mixed_ids_works_warn.yaml new file mode 100644 index 0000000..9ea74a6 --- /dev/null +++ b/test/cassettes/test-funders/test_funders_mixed_ids_works_warn.yaml @@ -0,0 +1,667 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/100000001/works + response: + body: + string: !!binary | + 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 + if8GiJ8IAgA= + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '31700' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:36:56 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/funders/10.13039/notarealdoi/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Sun, 07 Nov 2021 15:36:56 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-journals/test_journals_bad_id_warn.yaml b/test/cassettes/test-journals/test_journals_bad_id_warn.yaml new file mode 100644 index 0000000..d5493e2 --- /dev/null +++ b/test/cassettes/test-journals/test_journals_bad_id_warn.yaml @@ -0,0 +1,53 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/4444-4444 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:30:47 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-journals/test_journals_bad_id_works_warn.yaml b/test/cassettes/test-journals/test_journals_bad_id_works_warn.yaml new file mode 100644 index 0000000..b7ba661 --- /dev/null +++ b/test/cassettes/test-journals/test_journals_bad_id_works_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/4444-4444/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:30:48 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-journals/test_journals_mixed_ids_warn.yaml b/test/cassettes/test-journals/test_journals_mixed_ids_warn.yaml new file mode 100644 index 0000000..f9ad031 --- /dev/null +++ b/test/cassettes/test-journals/test_journals_mixed_ids_warn.yaml @@ -0,0 +1,126 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/1803-2427 + response: + body: + string: !!binary | + H4sIAAAAAAAAAK1XTY/bNhD9KwLPlCFS33sLkqJokAQF9rjYAy3TG8ayKJDULtyF/3tHH7ZESnLc + JjeaMxwN38w8Pr8jbZhpNHpA8oAwOnKt2Qv3zanmsPdDNqpi5cTwypUWsgIb2QSbYLSgh3dUMm38 + PqBffOfFwTfiCBaShEmckzRNSJ5jVMimMro9UDRK8cr4Oyngd5xhtGXFYS9KPmyRlGJkpGHlsEHD + 4AxeirPDTr5VXZTW4m9PvtC64Tv/xJlCD09PNCApDuNn3K4yTMNuRQNMab+XYxr0q/iyogSTpN9L + MBnOhtcVua4iTEi/CjDpzwbZZUUozvutHBbPkHDdbEuhv3NIDH3i3p+qORmuvL9lyaqd91hvvH88 + uZEb1KIDGA+Asj1gIZgBxAHRHiz0EGzyjKZxltAgyfIkjgEjLY6iZEqYU4+8qF7GA1AqjHZcF0rU + s1hgUlL5Yufu7ptqB9X2LyUZtktR8Epzez8J8ziMsixMaZCHARlP2zGtC90OoLiG7iu4X4rqYDtn + JE+TNIpIlgRREoOzVEV7ASfVpt4xw/1aQs6Cu7nImle+4nsOe4V1HzIFxYk5fGkaaiwEtGsErbFY + jWkcO31oNbSYB8ASTVGhoVNGJzf2xtTOr5rjdqFuLhhrZbW7xg7pFHOrjWKF+VlxnEpOgrRwhWke + kiCMooxm05g3292tnZ30kmEeBcbSCNMmjT73POfJvfcFBlIXrObeH4Us5csJRlI32x+8aCnr6R19 + ePz8seMhyLZiLb2hr6yCgT3Cd7D3VVbCSAUVx+14i+LktSP+hb2hM56czq+nvwFfKj54XT7+EcrL + 1Ws3KfbB8HrwkuD5eWSNgbmBOsryP1DydC77wiTQ1nmcxJSkYT6pS1diywj8OExF1xfDXhCFUZrR + hIyt1QW+GroQ6bRYy/aBSIaeW5isobZuwtPGtXlueSAuPlazdilNbgrJxfYMLpNJ14jn8Tn7hVLM + mdGuxQoXOmO9xrFT7Odkcx/2MzL7fdjPb3c/9tfR/9/Qz3nHgn6Blkbo54/CWAqHpJZj3YH9nKF/ + rdFnbHwv2ID2vmQvvRrjtdQCCHyByo1qOB493LfUNs/cV8SD47X+zu1Zqaeet19p9+PLD6Ebc+2t + c6LNFJcbhykjipL/BIS18DPxNU9zQW6s5LgO4JIAcIIsqMWbwK5/bF2uuV21pg0cv2VBfAOp1WKu + KdVbH7xxUVfLug5zYe56rArfe0Zg7Zpzhdg6wOj/9fj4DaQRIlkQ+jSiKUgmWMd+RPIEgTiBP2bV + IExAQA3/LWvQSAY8X1nZtL/H063cGZx4CbpLgaQqbM8h9vn5fP4XATkcMMMOAAA= + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '1016' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:30:47 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/4444-4444 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:30:48 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-journals/test_journals_mixed_ids_works_warn.yaml b/test/cassettes/test-journals/test_journals_mixed_ids_works_warn.yaml new file mode 100644 index 0000000..a1af5b0 --- /dev/null +++ b/test/cassettes/test-journals/test_journals_mixed_ids_works_warn.yaml @@ -0,0 +1,1091 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/1803-2427/works + response: + body: + string: !!binary | + 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 + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:30:49 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/journals/4444-4444/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:30:49 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-members/test_members_bad_id_warn.yaml b/test/cassettes/test-members/test_members_bad_id_warn.yaml new file mode 100644 index 0000000..54979d2 --- /dev/null +++ b/test/cassettes/test-members/test_members_bad_id_warn.yaml @@ -0,0 +1,53 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/121212121212 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:26:53 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-members/test_members_bad_id_works_warn.yaml b/test/cassettes/test-members/test_members_bad_id_works_warn.yaml new file mode 100644 index 0000000..2448a71 --- /dev/null +++ b/test/cassettes/test-members/test_members_bad_id_works_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/121212121212/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:27:33 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-members/test_members_mixed_ids_warn.yaml b/test/cassettes/test-members/test_members_mixed_ids_warn.yaml new file mode 100644 index 0000000..59e5f2f --- /dev/null +++ b/test/cassettes/test-members/test_members_mixed_ids_warn.yaml @@ -0,0 +1,148 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/98 + response: + body: + string: !!binary | + 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 + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '2254' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:27:22 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/121212121212 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:27:22 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-members/test_members_mixed_ids_works_warn.yaml b/test/cassettes/test-members/test_members_mixed_ids_works_warn.yaml new file mode 100644 index 0000000..bae19fb --- /dev/null +++ b/test/cassettes/test-members/test_members_mixed_ids_works_warn.yaml @@ -0,0 +1,666 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/98/works + response: + body: + string: !!binary | + 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 + 5n7jAgA= + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '31640' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:27:42 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/members/121212121212/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:27:43 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-prefixes/test_prefixes_bad_id_warn.yaml b/test/cassettes/test-prefixes/test_prefixes_bad_id_warn.yaml new file mode 100644 index 0000000..5a8ab97 --- /dev/null +++ b/test/cassettes/test-prefixes/test_prefixes_bad_id_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.9999 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:34:04 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-prefixes/test_prefixes_bad_id_works_warn.yaml b/test/cassettes/test-prefixes/test_prefixes_bad_id_works_warn.yaml new file mode 100644 index 0000000..b237a8a --- /dev/null +++ b/test/cassettes/test-prefixes/test_prefixes_bad_id_works_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.9999/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:34:05 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-prefixes/test_prefixes_mixed_ids_warn.yaml b/test/cassettes/test-prefixes/test_prefixes_mixed_ids_warn.yaml new file mode 100644 index 0000000..7aab57d --- /dev/null +++ b/test/cassettes/test-prefixes/test_prefixes_mixed_ids_warn.yaml @@ -0,0 +1,109 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.1371 + response: + body: + string: '{"status":"ok","message-type":"prefix","message-version":"1.0.0","message":{"member":"http:\/\/id.crossref.org\/member\/340","name":"Public + Library of Science (PLoS)","prefix":"http:\/\/id.crossref.org\/prefix\/10.1371"}}' + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '221' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:34:05 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.9999 + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:34:05 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-prefixes/test_prefixes_mixed_ids_works_warn.yaml b/test/cassettes/test-prefixes/test_prefixes_mixed_ids_works_warn.yaml new file mode 100644 index 0000000..8289138 --- /dev/null +++ b/test/cassettes/test-prefixes/test_prefixes_mixed_ids_works_warn.yaml @@ -0,0 +1,168 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.1371/works + response: + body: + string: !!binary | + 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 + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '3283' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 00:34:06 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/prefixes/10.9999/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 00:34:07 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-types/test_types.yaml b/test/cassettes/test-types/test_types.yaml index c57932a..5a70019 100644 --- a/test/cassettes/test-types/test_types.yaml +++ b/test/cassettes/test-types/test_types.yaml @@ -17,14 +17,14 @@ interactions: response: body: string: !!binary | - H4sIAAAAAAAAAHVUy27CMBD8lchngmhPFbcWOLRS1QiqXqoejLMFl8S27A0VQvx7TWISP9JTyMxk - MzuecCYGKTaGzIk8kAmpwRi6gxxPCix2veQVN+hRR9CGS2HZu+lsOhsYMj8TlEirXINpKrRD7x8m - hCPU9ufnmfDSPrSV8pAbYHidMSEV3UJl4ScLZxsHXyZOXEshd5qqvad87bFepkFJjZ5m3QG9QAFo - 6+rI4ddTFRbN1h3aS1t/qCk7xO7eW7AX/shGC7ss1chZBZ76pWOyR8eEsxUNrBbUNypxD9pj39r7 - YEBkKzV0lFVTj/n56IjQjgFMjwH9bL9Bg2CQg0B9CkJ2TLZqmSFtLRlAycXOjKRTDGyakNshNT9I - mKyVFNaMJ1r0WLgc21OFQaDtggsHjzo2oDmYfwxvOjJqXvpMV8BE7r1n/AWD1H6XoqS69HSbGzRy - OFEzhrMJO6KkQShzJgWGCRYtkS0ckZSKG9OMdeq5xXt5aXWg7V9K+HUvfXgQU6Rh/ZYOiSsapeta - GmZrA7yuFgWxatEohVu26eRbxP30r8vlD7nV18EkBQAA + H4sIAAAAAAAAAHVU0U7DIBT9lYbndZm+uTfdjNHE2GzGF+MDa68brgUCtzPLsn+XUUaB1qe25xwu + 5x4uPRGNFFtN5kTsyYQ0oDXdQo5HCQa7PPKaaQyoAyjNBDfszXQ2nfUMmZ8ICqR1rkC3NZqit3cT + whAa8/p5IqwyizZC7HMNJV5qTEhNN1Ab+MHA2drB54kTN4KLraJyFyhfPeZlCqRQGGhWHeAFEkAZ + VwcGv4GqMGi26lAvtf5Q0XKfunu3oBf+iFZx0yxVyMoaAvVLx2T3jolrSxpZLWhoVOAOVMC+2e+o + QGJraOgg6rYZ8/PREbEdDTg8Bgyz/QYFvIQcOKpjFLJjskfL9GkrUQJUjG/1SDpFzw4Tcj0MzfeS + UjRScGMmEC08FjdX7qjEKFDb4MLBo441KAb6H8Prjkwmb7imG8CBPNhnfINeau4lr6iqAt36Co0c + TjIZ/dnEMyKFRqjyUnCMEywskS0cMRgqpnU7NlPPFvfyyuhAmV9KfLuXIezF5hZHHp7sd1+LIo2n + c+mQdIKT8N0Qx9GbfC+dJzk9WjQJ6Rr9sPL1BHz1r/P5D4JF8NBDBQAA headers: access-control-allow-headers: - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, @@ -38,11 +38,11 @@ interactions: content-encoding: - gzip content-length: - - '432' + - '441' content-type: - application/json;charset=utf-8 date: - - Thu, 28 Oct 2021 15:55:23 GMT + - Fri, 12 Nov 2021 04:16:47 GMT permissions-policy: - interest-cohort=() server: diff --git a/test/cassettes/test-types/test_types_bad_id_warn.yaml b/test/cassettes/test-types/test_types_bad_id_warn.yaml new file mode 100644 index 0000000..70f96eb --- /dev/null +++ b/test/cassettes/test-types/test_types_bad_id_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/tape + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 04:16:49 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-types/test_types_bad_id_works_warn.yaml b/test/cassettes/test-types/test_types_bad_id_works_warn.yaml new file mode 100644 index 0000000..4d56cc7 --- /dev/null +++ b/test/cassettes/test-types/test_types_bad_id_works_warn.yaml @@ -0,0 +1,55 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/tape/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 04:16:50 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-types/test_types_ids.yaml b/test/cassettes/test-types/test_types_ids.yaml index b19189e..54d2cec 100644 --- a/test/cassettes/test-types/test_types_ids.yaml +++ b/test/cassettes/test-types/test_types_ids.yaml @@ -32,7 +32,7 @@ interactions: content-type: - application/json;charset=utf-8 date: - - Thu, 28 Oct 2021 15:55:24 GMT + - Fri, 12 Nov 2021 04:16:48 GMT permissions-policy: - interest-cohort=() server: diff --git a/test/cassettes/test-types/test_types_mixed_ids_warn.yaml b/test/cassettes/test-types/test_types_mixed_ids_warn.yaml new file mode 100644 index 0000000..c38704a --- /dev/null +++ b/test/cassettes/test-types/test_types_mixed_ids_warn.yaml @@ -0,0 +1,109 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/journal-article + response: + body: + string: '{"status":"ok","message-type":"type","message-version":"1.0.0","message":{"id":"journal-article","label":"Journal + Article"}}' + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '124' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 04:16:49 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/tape + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 04:16:50 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-types/test_types_mixed_ids_works_warn.yaml b/test/cassettes/test-types/test_types_mixed_ids_works_warn.yaml new file mode 100644 index 0000000..7ceb301 --- /dev/null +++ b/test/cassettes/test-types/test_types_mixed_ids_works_warn.yaml @@ -0,0 +1,239 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/journal-article/works + response: + body: + string: !!binary | + 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 + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '7343' + content-type: + - application/json + date: + - Fri, 12 Nov 2021 04:16:51 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/types/tape/works + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json;charset=utf-8 + date: + - Fri, 12 Nov 2021 04:16:51 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-types/test_types_query.yaml b/test/cassettes/test-types/test_types_query.yaml index 0593424..fb6c52e 100644 --- a/test/cassettes/test-types/test_types_query.yaml +++ b/test/cassettes/test-types/test_types_query.yaml @@ -17,14 +17,14 @@ interactions: response: body: string: !!binary | - H4sIAAAAAAAAAHVUy27CMBD8lchngmhPFbcWOLRS1QiqXqoejLMFl8S27A0VQvx7TWISP9JTyMxk - MzuecCYGKTaGzIk8kAmpwRi6gxxPCix2veQVN+hRR9CGS2HZu+lsOhsYMj8TlEirXINpKrRD7x8m - hCPU9ufnmfDSPrSV8pAbYHidMSEV3UJl4ScLZxsHXyZOXEshd5qqvad87bFepkFJjZ5m3QG9QAFo - 6+rI4ddTFRbN1h3aS1t/qCk7xO7eW7AX/shGC7ss1chZBZ76pWOyR8eEsxUNrBbUNypxD9pj39r7 - YEBkKzV0lFVTj/n56IjQjgFMjwH9bL9Bg2CQg0B9CkJ2TLZqmSFtLRlAycXOjKRTDGyakNshNT9I - mKyVFNaMJ1r0WLgc21OFQaDtggsHjzo2oDmYfwxvOjJqXvpMV8BE7r1n/AWD1H6XoqS69HSbGzRy - OFEzhrMJO6KkQShzJgWGCRYtkS0ckZSKG9OMdeq5xXt5aXWg7V9K+HUvfXgQU6Rh/ZYOiSsapeta - GmZrA7yuFgWxatEohVu26eRbxP30r8vlD7nV18EkBQAA + H4sIAAAAAAAAAHVU0U7DIBT9lYbndZm+uTfdjNHE2GzGF+MDa68brgUCtzPLsn+XUUaB1qe25xwu + 5x4uPRGNFFtN5kTsyYQ0oDXdQo5HCQa7PPKaaQyoAyjNBDfszXQ2nfUMmZ8ICqR1rkC3NZqit3cT + whAa8/p5IqwyizZC7HMNJV5qTEhNN1Ab+MHA2drB54kTN4KLraJyFyhfPeZlCqRQGGhWHeAFEkAZ + VwcGv4GqMGi26lAvtf5Q0XKfunu3oBf+iFZx0yxVyMoaAvVLx2T3jolrSxpZLWhoVOAOVMC+2e+o + QGJraOgg6rYZ8/PREbEdDTg8Bgyz/QYFvIQcOKpjFLJjskfL9GkrUQJUjG/1SDpFzw4Tcj0MzfeS + UjRScGMmEC08FjdX7qjEKFDb4MLBo441KAb6H8Prjkwmb7imG8CBPNhnfINeau4lr6iqAt36Co0c + TjIZ/dnEMyKFRqjyUnCMEywskS0cMRgqpnU7NlPPFvfyyuhAmV9KfLuXIezF5hZHHp7sd1+LIo2n + c+mQdIKT8N0Qx9GbfC+dJzk9WjQJ6Rr9sPL1BHz1r/P5D4JF8NBDBQAA headers: access-control-allow-headers: - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, @@ -38,11 +38,11 @@ interactions: content-encoding: - gzip content-length: - - '432' + - '441' content-type: - application/json;charset=utf-8 date: - - Thu, 28 Oct 2021 15:55:23 GMT + - Fri, 12 Nov 2021 04:16:48 GMT permissions-policy: - interest-cohort=() server: diff --git a/test/cassettes/test-types/test_types_query_filters_not_allowed_with_typeid.yaml b/test/cassettes/test-types/test_types_query_filters_not_allowed_with_typeid.yaml index 1425571..0b4455d 100644 --- a/test/cassettes/test-types/test_types_query_filters_not_allowed_with_typeid.yaml +++ b/test/cassettes/test-types/test_types_query_filters_not_allowed_with_typeid.yaml @@ -33,7 +33,7 @@ interactions: content-type: - application/json;charset=utf-8 date: - - Thu, 28 Oct 2021 15:55:25 GMT + - Fri, 12 Nov 2021 04:16:49 GMT permissions-policy: - interest-cohort=() server: diff --git a/test/cassettes/test-types/test_types_works.yaml b/test/cassettes/test-types/test_types_works.yaml index 67ca18d..e8f1a73 100644 --- a/test/cassettes/test-types/test_types_works.yaml +++ b/test/cassettes/test-types/test_types_works.yaml @@ -19,17 +19,17 @@ interactions: string: !!binary | H4sIAAAAAAAAAM1VXW/aMBT9K8jPMdj5JHmbOqmrVG3V1mnTgAfjGOI2iTN/dEWI/77rQAG1sD1U nfYW+177nnPuPfEaGcusM6hA6h4FqBHGsKXAdtUJ2Pul9D2upbFHoQehjVQtROmQDMkhgoo1WjAu - LNy23gTIKstqrIVxtd+K4ygfB0ha0cBqskayLcWjKP2xklmBO6Z93mQSkpAGSZDOZsE2YmXj0fh9 - TBJM0tuQFBEp4uwHlPdRYNF0qKBpSKIoInGWxzlA0GIhtGi5wFy51qKCBKhzc2BUCQ03fmO1FXpQ - isGldiv/ednMP8CdXLVWtBaXqmGy7SHuviYAimtlTMNAG2BnteS2F2TBaiOg6vtPV14dMqQJTaYj - tuwqD3Mr6Z1yumW1r6EFkDvJn6RBHITZSwFIikmMw+yWZgWJCkqfC0DjlCZZlFNCCEAxUI37oxce - MsgB6dLgvS4lnq+OtLHS1pA9Qe80r+TDYDF1hCw4yCIMbPDKChBLD24qWSujukoKBBg7uE8+Hjj3 - M9HMe4mjLIZlKTpl5Bm20O0oSE53O4KG39JxQeMiCV90m8Z5OiZ5uCPLlYaTMJTwXSlt8Z5P34OZ - 527cKRCtq+vZ7HhizJEsXz9fA6DK2q6Yjqaj8nFYKjlUejkdPe/y1ZcvH31BQBRh6ALdVW13loK5 - f2C18wQPKfvh6LSEkhs4Ytz8TnDrr9qLvUKA8PW+oTA5Z3yTRnk4/l98Izu9fAvf0KggZ3yTj1/p - myugrzn88Jxm9eBGs2XDrOTmX7kkOUFt6xKYs7+6pFf8TV2y6+mTSwBbiMM8+X7eJYeUP7vkWrZL - By8ViD1gbTm4ZrD2r1KALlTTuFZy1o9bgJ5C27zDObDXbPdA4U5o4O0ftTBAP53QKy8HSAp69Qbs - KRvB4EeJoef+TfPybDab386AXwhUBwAA + LNy23gTIKstqrIVxtd+K4zSOAyStaGA1WSPZluJRlP5YyazAHdM+bzIJSUiDJEhns2AbsbLxaPw+ + Jgkm6W1IiogUcfYDyvsosGg6VNA0JFEUkTjL4xwgaLEQWrRcYK5ca1FBAtS5OTCqhIYbv7HaCj0o + xeBSu5X/vGzmH+BOrlorWotL1TDZ9hB3XxMAxbUypmGgDbCzWnLbC7JgtRFQ9f2nK68OGdKEJtMR + W3aVh7mV9E453bLa19ACyJ3kT9IgDsLspQAkxSTGYXZLs4JEBaXPBaBxSpMsyikhBKAYqMb90QsP + GeSAdGnwXpcSz1dH2lhpa8ieoHeaV/JhsJg6QhYcZBEGNnhlBYilBzeVrJVRXSUFAowd3CcfD5z7 + mWjmvcRRFsOyFJ0y8gxb6HYUJKe7HUHDb+m4oHGRhC+6TeM8HZM83JHlSsNJGEr4rpS2eM+n78HM + czfuFIjW1fVsdjwx5kiWr5+vAVBlbVdMR9NR+TgslRwqvZyOnnf56suXj74gIIowdIHuqrY7S8Hc + P7DaeYKHlP1wdFpCyQ0cMW5+J7j1V+3FXiFA+HrfUJicM75Jozwc/y++kZ1evoVvaFSQM77Jx6/0 + zRXQ1xx+eE6zenCj2bJhVnLzr1ySnKC2dQnM2V9d0iv+pi7Z9fTJJYAtxGGefD/vkkPKn11yLdul + g5cKxB6wthxcM1j7VylAF6ppXCs568ctQE+hbd7hHNhrtnugcCc08PaPWhign07olZcDJAW9egP2 + lI1g8KPE0HP/pnl5NpvNb0iQbG9UBwAA headers: access-control-allow-headers: - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, @@ -47,7 +47,7 @@ interactions: content-type: - application/json date: - - Thu, 28 Oct 2021 15:55:25 GMT + - Fri, 12 Nov 2021 04:16:48 GMT permissions-policy: - interest-cohort=() server: diff --git a/test/cassettes/test-works/test_works_bad_id_warn.yaml b/test/cassettes/test-works/test_works_bad_id_warn.yaml new file mode 100644 index 0000000..4fd8205 --- /dev/null +++ b/test/cassettes/test-works/test_works_bad_id_warn.yaml @@ -0,0 +1,53 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/works/10.1371/notarealdoi + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:39:31 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/cassettes/test-works/test_works_mixed_ids_warn.yaml b/test/cassettes/test-works/test_works_mixed_ids_warn.yaml new file mode 100644 index 0000000..bf5bdc3 --- /dev/null +++ b/test/cassettes/test-works/test_works_mixed_ids_warn.yaml @@ -0,0 +1,232 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/works/10.1371/journal.pone.0033693 + response: + body: + string: !!binary | + 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 + p6lsWgAA + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-encoding: + - gzip + content-length: + - '7017' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:39:31 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + vary: + - Accept-Encoding + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python-requests/2.25.1 habanero/0.7.6 + X-USER-AGENT: + - python-requests/2.25.1 habanero/0.7.6 + method: GET + uri: https://api.crossref.org/works/10.1371/notarealdoi + response: + body: + string: Resource not found. + headers: + access-control-allow-headers: + - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language, + Accept-Ranges, Cache-Control + access-control-allow-origin: + - '*' + access-control-expose-headers: + - Link + connection: + - close + content-length: + - '19' + content-type: + - application/json + date: + - Sun, 07 Nov 2021 15:39:32 GMT + permissions-policy: + - interest-cohort=() + server: + - Jetty(9.4.40.v20210413) + x-api-pool: + - public + x-rate-limit-interval: + - 1s + x-rate-limit-limit: + - '50' + x-ratelimit-interval: + - 1s + x-ratelimit-limit: + - '50' + status: + code: 404 + message: Not Found +version: 1 diff --git a/test/test-funders.py b/test/test-funders.py index 0ad037d..cc5c914 100644 --- a/test/test-funders.py +++ b/test/test-funders.py @@ -2,6 +2,7 @@ import os import requests from habanero import exceptions, Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -89,5 +90,37 @@ def test_funders_field_queries(): @pytest.mark.vcr def test_funders_query_filters_not_allowed_with_dois(): - with pytest.raises(exceptions.RequestError): + with pytest.raises(HTTPError): cr.funders(ids="10.13039/100000001", query_container_title="engineering") + +@pytest.mark.vcr +def test_funders_bad_id_warn(): + "funders - param: warn" + with pytest.warns(UserWarning): + out = cr.funders(ids = '10.13039/notarealdoi', warn=True) + assert out is None + +@pytest.mark.vcr +def test_funders_mixed_ids_warn(): + "funders - param: warn" + with pytest.warns(UserWarning): + out = cr.funders(ids = ['10.13039/100000001','10.13039/notarealdoi'], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None + +@pytest.mark.vcr +def test_funders_bad_id_works_warn(): + "funders - param: warn" + with pytest.warns(UserWarning): + out = cr.funders(ids = '10.13039/notarealdoi', works=True, warn=True) + assert out is None + +@pytest.mark.vcr +def test_funders_mixed_ids_works_warn(): + "funders - param: warn" + with pytest.warns(UserWarning): + out = cr.funders(ids = ['10.13039/100000001','10.13039/notarealdoi'], works=True, warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None diff --git a/test/test-journals.py b/test/test-journals.py index b7a4da3..b45fbc7 100644 --- a/test/test-journals.py +++ b/test/test-journals.py @@ -2,6 +2,7 @@ import os import vcr from habanero import exceptions, Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -104,5 +105,37 @@ def test_journals_field_queries(): @pytest.mark.vcr def test_journals_field_queries_not_allowed_with_dois(): - with pytest.raises(exceptions.RequestError): + with pytest.raises(HTTPError): res = cr.journals(ids="2167-8359", query_bibliographic="fish") + +@pytest.mark.vcr +def test_journals_bad_id_warn(): + "journals - param: warn" + with pytest.warns(UserWarning): + out = cr.journals(ids="4444-4444", warn=True) + assert out is None + +@pytest.mark.vcr +def test_journals_mixed_ids_warn(): + "journals - param: warn" + with pytest.warns(UserWarning): + out = cr.journals(ids = ["1803-2427","4444-4444"], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None + +@pytest.mark.vcr +def test_journals_bad_id_works_warn(): + "journals - param: warn" + with pytest.warns(UserWarning): + out = cr.journals(ids = "4444-4444", works=True, warn=True) + assert out is None + +@pytest.mark.vcr +def test_journals_mixed_ids_works_warn(): + "journals - param: warn" + with pytest.warns(UserWarning): + out = cr.journals(ids = ["1803-2427","4444-4444"], works=True, warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None diff --git a/test/test-members.py b/test/test-members.py index 4ebefef..d9deded 100644 --- a/test/test-members.py +++ b/test/test-members.py @@ -3,6 +3,7 @@ import vcr import requests from habanero import exceptions, Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -51,5 +52,37 @@ def test_members_field_queries(): @pytest.mark.vcr def test_members_query_filters_not_allowed_with_dois(): "members - param: kwargs - query filters not allowed on works/memberid/ route" - with pytest.raises(exceptions.RequestError): + with pytest.raises(HTTPError): cr.members(ids=98, query_author="carl boettiger") + +@pytest.mark.vcr +def test_members_bad_id_warn(): + "members - param: warn" + with pytest.warns(UserWarning): + out = cr.members(ids = 121212121212, warn=True) + assert out is None + +@pytest.mark.vcr +def test_members_mixed_ids_warn(): + "members - param: warn" + with pytest.warns(UserWarning): + out = cr.members(ids = [98,121212121212], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None + +@pytest.mark.vcr +def test_members_bad_id_works_warn(): + "members - param: warn" + with pytest.warns(UserWarning): + out = cr.members(ids = 121212121212, works=True, warn=True) + assert out is None + +@pytest.mark.vcr +def test_members_mixed_ids_works_warn(): + "members - param: warn" + with pytest.warns(UserWarning): + out = cr.members(ids = [98,121212121212], works=True, warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None diff --git a/test/test-prefixes.py b/test/test-prefixes.py index 0d69a73..f41772e 100644 --- a/test/test-prefixes.py +++ b/test/test-prefixes.py @@ -2,6 +2,7 @@ import os import vcr from habanero import exceptions, Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -49,5 +50,37 @@ def test_prefixes_field_queries(): @pytest.mark.vcr def test_prefixes_query_filters_not_allowed_with_dois(): "prefixes - param: kwargs - query filters not allowed on prefixes/prefix/ route" - with pytest.raises(exceptions.RequestError): + with pytest.raises(HTTPError): cr.prefixes(ids="10.1371", query_editor="cooper") + +@pytest.mark.vcr +def test_prefixes_bad_id_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.prefixes(ids = "10.9999", warn=True) + assert out is None + +@pytest.mark.vcr +def test_prefixes_mixed_ids_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.prefixes(ids = ["10.1371","10.9999"], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None + +@pytest.mark.vcr +def test_prefixes_bad_id_works_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.prefixes(ids = "10.9999", works=True, warn=True) + assert out is None + +@pytest.mark.vcr +def test_prefixes_mixed_ids_works_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.prefixes(ids = ["10.1371","10.9999"], works=True, warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None diff --git a/test/test-types.py b/test/test-types.py index 066db9d..5f0405f 100644 --- a/test/test-types.py +++ b/test/test-types.py @@ -1,7 +1,8 @@ import pytest import os import vcr -from habanero import exceptions, Crossref +from habanero import Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -31,12 +32,13 @@ {"id": "posted-content", "label": "Posted Content"}, {"id": "journal-issue", "label": "Journal Issue"}, {"id": "dissertation", "label": "Dissertation"}, + {"id": "grant", "label": "Grant"}, {"id": "dataset", "label": "Dataset"}, {"id": "book-series", "label": "Book Series"}, {"id": "edited-book", "label": "Edited Book"}, {"id": "standard-series", "label": "Standard Series"}, ], - "total-results": 28, + "total-results": 29, } @@ -87,5 +89,37 @@ def test_types_works(): @pytest.mark.vcr def test_types_query_filters_not_allowed_with_typeid(): "types - param: kwargs - query filters not allowed on types/type/ route" - with pytest.raises(exceptions.RequestError): + with pytest.raises(HTTPError): cr.types(ids="journal-article", query_bibliographic="gender") + +@pytest.mark.vcr +def test_types_bad_id_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.types(ids = "tape", warn=True) + assert out is None + +@pytest.mark.vcr +def test_types_mixed_ids_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.types(ids = ["journal-article","tape"], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None + +@pytest.mark.vcr +def test_types_bad_id_works_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.types(ids = "tape", works=True, warn=True) + assert out is None + +@pytest.mark.vcr +def test_types_mixed_ids_works_warn(): + "prefixes - param: warn" + with pytest.warns(UserWarning): + out = cr.types(ids = ["journal-article","tape"], works=True, warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None diff --git a/test/test-works.py b/test/test-works.py index 251ef74..91c4037 100644 --- a/test/test-works.py +++ b/test/test-works.py @@ -2,7 +2,8 @@ import os import vcr import requests -from habanero import exceptions, Crossref, RequestError +from habanero import exceptions, Crossref +from requests.exceptions import HTTPError cr = Crossref() @@ -89,7 +90,7 @@ def test_works_field_queries(): @pytest.mark.vcr def test_works_query_filters_not_allowed_with_dois(): "works - param: kwargs - query filters not allowed on works/DOI/ route" - with pytest.raises(RequestError): + with pytest.raises(HTTPError): cr.works(ids="10.1371/journal.pone.0033693", query_author="carl boettiger") @@ -98,3 +99,19 @@ def test_works_with_select_param(): "works - param: select" res1 = cr.works(query="ecology", select="DOI,title") assert list(res1["message"]["items"][0].keys()) == ["DOI", "title"] + +@pytest.mark.vcr +def test_works_bad_id_warn(): + "works - param: warn" + with pytest.warns(UserWarning): + out = cr.works(ids="10.1371/notarealdoi", warn=True) + assert out is None + +@pytest.mark.vcr +def test_works_mixed_ids_warn(): + "works - param: warn" + with pytest.warns(UserWarning): + out = cr.works(ids = ['10.1371/journal.pone.0033693','10.1371/notarealdoi'], warn=True) + assert len(out) == 2 + assert isinstance(out[0], dict) + assert out[1] is None