diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2018-05-16 18:34:19 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2018-05-16 18:34:19 -0700 |
commit | 4cf667c283d54f769e73d76bb23bbb68b4329cf8 (patch) | |
tree | 4bbeb1cdeb053c09e86e2cc41962382bcb837729 /tests | |
parent | b2d5968e0a7ac5576782f54980c930345f4c5298 (diff) | |
download | fatcat-4cf667c283d54f769e73d76bb23bbb68b4329cf8.tar.gz fatcat-4cf667c283d54f769e73d76bb23bbb68b4329cf8.zip |
move python code to subdirectory
Diffstat (limited to 'tests')
-rw-r--r-- | tests/api.py | 308 | ||||
-rw-r--r-- | tests/api_client.py | 14 | ||||
-rw-r--r-- | tests/entity_lifecycle.py | 80 | ||||
-rw-r--r-- | tests/files/crossref-works.2018-01-21.badsample.json | 10 | ||||
-rw-r--r-- | tests/fixtures.py | 169 | ||||
-rw-r--r-- | tests/models.py | 87 | ||||
-rw-r--r-- | tests/routes.py | 67 | ||||
-rw-r--r-- | tests/test_fixtures.py | 29 |
8 files changed, 0 insertions, 764 deletions
diff --git a/tests/api.py b/tests/api.py deleted file mode 100644 index 02875f64..00000000 --- a/tests/api.py +++ /dev/null @@ -1,308 +0,0 @@ - -import json -import unittest -import tempfile -import pytest -import fatcat -import fatcat.sql -from fatcat.models import * -from fixtures import * - - -def test_health(app): - rv = app.get('/health') - obj = json.loads(rv.data.decode('utf-8')) - assert obj['ok'] - -def test_api_work(app): - fatcat.dummy.insert_example_works() - - # Invalid Id - rv = app.get('/v0/work/_') - assert rv.status_code == 404 - - # Random - rv = app.get('/v0/work/random') - rv = app.get(rv.location) - work = json.loads(rv.data.decode('utf-8')) - check_entity_fields(work) - print(work) - assert work['title'] - assert work['work_type'] - - # Valid Id (from random above) - rv = app.get('/v0/work/{}'.format(work['id'])) - assert rv.status_code == 200 - - # Missing Id - rv = app.get('/v0/work/r3zga5b9cd7ef8gh084714iljk') - assert rv.status_code == 404 - -def test_api_work_create(app): - assert WorkIdent.query.count() == 0 - assert WorkRev.query.count() == 0 - assert WorkEdit.query.count() == 0 - rv = app.post('/v0/work', - data=json.dumps(dict(title="dummy", work_type="thing", extra=dict(a=1, b="zing"))), - headers={"content-type": "application/json"}) - print(rv) - assert rv.status_code == 200 - assert WorkIdent.query.count() == 1 - assert WorkRev.query.count() == 1 - assert WorkEdit.query.count() == 1 - # not alive yet - assert WorkIdent.query.filter(WorkIdent.is_live==True).count() == 0 - -def test_api_rich_create(app): - - # TODO: create user? - - rv = app.post('/v0/editgroup', - data=json.dumps(dict( - extra=dict(q=1, u="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - editgroup_id = obj['id'] - - for cls in (WorkIdent, WorkRev, WorkEdit, - ContainerIdent, ContainerRev, ContainerEdit, - CreatorIdent, CreatorRev, CreatorEdit, - ReleaseIdent, ReleaseRev, ReleaseEdit, - FileIdent, FileRev, FileEdit, - ChangelogEntry): - assert cls.query.count() == 0 - - rv = app.post('/v0/container', - data=json.dumps(dict( - name="schmournal", - publisher="society of authors", - issn="2222-3333", - editgroup=editgroup_id, - extra=dict(a=2, i="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - container_id = obj['id'] - - rv = app.post('/v0/creator', - data=json.dumps(dict( - name="anon y. mouse", - orcid="0000-0002-1825-0097", - editgroup=editgroup_id, - extra=dict(w=1, q="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - creator_id = obj['id'] - - rv = app.post('/v0/work', - data=json.dumps(dict( - title="dummy work", - work_type="book", - editgroup=editgroup_id, - extra=dict(a=3, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - work_id = obj['id'] - - # this stub work will be referenced - rv = app.post('/v0/release', - data=json.dumps(dict( - title="derivative work", - work_type="journal-article", - work=work_id, - creators=[creator_id], - doi="10.1234/58", - editgroup=editgroup_id, - refs=[ - dict(stub="some other journal article"), - ], - extra=dict(f=7, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - stub_release_id = obj['id'] - - rv = app.post('/v0/release', - data=json.dumps(dict( - title="dummy work", - work_type="book", - work=work_id, - container=container_id, - creators=[creator_id], - doi="10.1234/5678", - editgroup=editgroup_id, - refs=[ - dict(stub="some book", target=stub_release_id), - ], - extra=dict(f=7, b="loopy"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - release_id = obj['id'] - - rv = app.post('/v0/file', - data=json.dumps(dict( - sha1="deadbeefdeadbeef", - size=1234, - releases=[release_id], - editgroup=editgroup_id, - extra=dict(f=4, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - file_id = obj['id'] - - for cls in (WorkIdent, WorkRev, WorkEdit, - ContainerIdent, ContainerRev, ContainerEdit, - CreatorIdent, CreatorRev, CreatorEdit, - FileIdent, FileRev, FileEdit): - assert cls.query.count() == 1 - for cls in (ReleaseIdent, ReleaseRev, ReleaseEdit): - assert cls.query.count() == 2 - - for cls in (WorkIdent, - ContainerIdent, - CreatorIdent, - ReleaseIdent, - FileIdent): - assert cls.query.filter(cls.is_live==True).count() == 0 - - assert ChangelogEntry.query.count() == 0 - rv = app.post('/v0/editgroup/{}/accept'.format(editgroup_id), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - assert ChangelogEntry.query.count() == 1 - - for cls in (WorkIdent, WorkRev, WorkEdit, - ContainerIdent, ContainerRev, ContainerEdit, - CreatorIdent, CreatorRev, CreatorEdit, - FileIdent, FileRev, FileEdit): - assert cls.query.count() == 1 - for cls in (ReleaseIdent, ReleaseRev, ReleaseEdit): - assert cls.query.count() == 2 - - for cls in (WorkIdent, - ContainerIdent, - CreatorIdent, - FileIdent): - assert cls.query.filter(cls.is_live==True).count() == 1 - assert ReleaseIdent.query.filter(ReleaseIdent.is_live==True).count() == 2 - - # Test that foreign key relations worked - release_rv = json.loads(app.get('/v0/release/{}'.format(release_id)).data.decode('utf-8')) - print(release_rv) - assert release_rv['creators'][0]['creator'] == creator_id - assert release_rv['container']['id'] == container_id - assert release_rv['work']['id'] == work_id - assert release_rv['refs'][0]['target'] == stub_release_id - - file_rv = json.loads(app.get('/v0/file/{}'.format(file_id)).data.decode('utf-8')) - print(file_rv) - assert file_rv['releases'][0]['release'] == release_id - - # test that editor's active edit group is now invalid - editor = Editor.query.first() - assert editor.active_editgroup is None - -def test_api_release_lookup(rich_app): - app = rich_app - - rv = app.get('/v0/release/1', - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - - rv = app.get('/v0/release/lookup', - data=json.dumps(dict(doi="10.1234/5678")), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - assert obj['doi'] == "10.1234/5678" - assert obj.get('id') != None - - rv = app.get('/v0/release/lookup', - data=json.dumps(dict(doi="10.1234/5678_noexit")), - headers={"content-type": "application/json"}) - assert rv.status_code == 404 - - rv = app.get('/v0/release/lookup', - data=json.dumps(dict(doi="not_even_valid_doi")), - headers={"content-type": "application/json"}) - assert rv.status_code == 400 - -def test_api_creator_lookup(rich_app): - app = rich_app - - rv = app.get('/v0/creator/1', - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - - rv = app.get('/v0/creator/lookup', - data=json.dumps(dict(orcid="0000-0002-1825-0097")), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - assert obj['orcid'] == "0000-0002-1825-0097" - assert obj.get('id') != None - - rv = app.get('/v0/creator/lookup', - data=json.dumps(dict(orcid="0000-0002-1825-0098")), - headers={"content-type": "application/json"}) - assert rv.status_code == 404 - - rv = app.get('/v0/creator/lookup', - data=json.dumps(dict(orcid="not_even_valid_orcid")), - headers={"content-type": "application/json"}) - assert rv.status_code == 400 - - -def test_api_container_lookup(rich_app): - app = rich_app - - rv = app.get('/v0/container/1', - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - - rv = app.get('/v0/container/lookup', - data=json.dumps(dict(issn="2222-3333")), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - assert obj['issn'] == "2222-3333" - assert obj.get('id') != None - - rv = app.get('/v0/container/lookup', - data=json.dumps(dict(issn="2222-3334")), - headers={"content-type": "application/json"}) - assert rv.status_code == 404 - - rv = app.get('/v0/container/lookup', - data=json.dumps(dict(issn="not_even_valid_issn")), - headers={"content-type": "application/json"}) - assert rv.status_code == 400 - -def test_api_editor_get(rich_app): - app = rich_app - - rv = app.get('/v0/editor/admin', - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - print(obj) - assert obj['username'] == "admin" - assert obj['id'] == 1 - -def test_api_editor_changelog(rich_app): - app = rich_app - - rv = app.get('/v0/editor/admin/changelog', - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - print(obj) - assert len(obj) == 1 diff --git a/tests/api_client.py b/tests/api_client.py deleted file mode 100644 index 37e3da56..00000000 --- a/tests/api_client.py +++ /dev/null @@ -1,14 +0,0 @@ - -import pytest -import fatcat.api_client -from fixtures import * - - -def test_client_health(api_client): - assert api_client.health() != None - - -def test_import_crossref(api_client): - api_client.import_crossref_file('tests/files/crossref-works.2018-01-21.badsample.json') - - # TODO: use API to check that entities actually created... diff --git a/tests/entity_lifecycle.py b/tests/entity_lifecycle.py deleted file mode 100644 index 4ac7ee68..00000000 --- a/tests/entity_lifecycle.py +++ /dev/null @@ -1,80 +0,0 @@ - -import json -import unittest -import tempfile -import pytest -import fatcat -import fatcat.sql -from fatcat.models import * -from fixtures import * - - -def test_merge_works(app): - - # two works, each with releases - rv = app.post('/v0/work', - data=json.dumps(dict()), - headers={"content-type": "application/json"}) - workA_id = json.loads(rv.data.decode('utf-8'))['id'] - - rv = app.post('/v0/work', - data=json.dumps(dict()), - headers={"content-type": "application/json"}) - workB_id = json.loads(rv.data.decode('utf-8'))['id'] - - rv = app.post('/v0/release', - data=json.dumps(dict( - title="some release", - work_type="journal-article", - work=workA_id, - doi="10.1234/A1")), - headers={"content-type": "application/json"}) - releaseA1 = json.loads(rv.data.decode('utf-8'))['id'] - - rv = app.post('/v0/release', - data=json.dumps(dict( - title="some release", - work_type="journal-article", - work=workB_id, - doi="10.1234/B1")), - headers={"content-type": "application/json"}) - releaseB1 = json.loads(rv.data.decode('utf-8'))['id'] - - rv = app.post('/v0/release', - data=json.dumps(dict( - title="some release", - work_type="journal-article", - work=workB_id, - doi="10.1234/A1")), - headers={"content-type": "application/json"}) - releaseB2 = json.loads(rv.data.decode('utf-8'))['id'] - - # XXX: what if workB primary was set? - - editgroup_id = 1 - rv = app.post('/v0/editgroup/{}/accept'.format(editgroup_id), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - assert ChangelogEntry.query.count() == 1 - assert WorkIdent.query.filter(WorkIdent.is_live==True).count() == 2 - assert ReleaseIdent.query.filter(ReleaseIdent.is_live==True).count() == 3 - - # merge works - fatcat.sql.merge_works(workA_id, workB_id) - editgroup_id = 2 - rv = app.post('/v0/editgroup/{}/accept'.format(editgroup_id), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - - # check results - assert ChangelogEntry.query.count() == 2 - assert WorkIdent.query.filter(WorkIdent.is_live==True).count() == 2 - assert ReleaseIdent.query.filter(ReleaseIdent.is_live==True).count() == 3 - - workA_json = json.loads(app.get('/v0/work/{}'.format(workA_id)).data.decode('utf-8')) - workB_json = json.loads(app.get('/v0/work/{}'.format(workB_id)).data.decode('utf-8')) - assert workA_json['rev'] == workB_json['rev'] - print(workA_json) - print(workB_json) - assert workA_json['redirect_id'] == None - assert workB_json['redirect_id'] == workA_json['id'] diff --git a/tests/files/crossref-works.2018-01-21.badsample.json b/tests/files/crossref-works.2018-01-21.badsample.json deleted file mode 100644 index 143adf3e..00000000 --- a/tests/files/crossref-works.2018-01-21.badsample.json +++ /dev/null @@ -1,10 +0,0 @@ -{ "_id" : { "$oid" : "5a55183088a035a45bd906de" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:35:29Z", "timestamp" : { "$numberLong" : "1508769329541" } }, "reference-count" : 7, "publisher" : "Elsevier BV", "issue" : "3", "license" : [ { "URL" : "http://www.elsevier.com/tdm/userlicense/1.0/", "start" : { "date-parts" : [ [ 2002, 3, 1 ] ], "date-time" : "2002-03-01T00:00:00Z", "timestamp" : { "$numberLong" : "1014940800000" } }, "delay-in-days" : 0, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Journal of the American Academy of Dermatology" ], "published-print" : { "date-parts" : [ [ 2002, 3 ] ] }, "DOI" : "10.1067/mjd.2002.110660", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 24 ] ], "date-time" : "2002-08-24T22:14:26Z", "timestamp" : { "$numberLong" : "1030227266000" } }, "page" : "434-436", "source" : "Crossref", "is-referenced-by-count" : 7, "title" : [ "Progressive generalized alopecia due to systemic amyloidosis" ], "prefix" : "10.1067", "volume" : "46", "author" : [ { "given" : "Michael E.", "family" : "Lutz", "affiliation" : [] }, { "given" : "Mark R.", "family" : "Pittelkow", "affiliation" : [] } ], "member" : "78", "container-title" : [ "Journal of the American Academy of Dermatology" ], "link" : [ { "URL" : "http://api.elsevier.com/content/article/PII:S0190962202365551?httpAccept=text/xml", "content-type" : "text/xml", "content-version" : "vor", "intended-application" : "text-mining" }, { "URL" : "http://api.elsevier.com/content/article/PII:S0190962202365551?httpAccept=text/plain", "content-type" : "text/plain", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 6, 14 ] ], "date-time" : "2017-06-14T16:37:31Z", "timestamp" : { "$numberLong" : "1497458251000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2002, 3 ] ] }, "references-count" : 7, "alternative-id" : [ "S0190962202365551" ], "URL" : "http://dx.doi.org/10.1067/mjd.2002.110660", "ISSN" : [ "0190-9622" ], "issn-type" : [ { "value" : "0190-9622", "type" : "print" } ], "subject" : [ "Dermatology" ] } -{ "_id" : { "$oid" : "5a5513fb88a035a45bd63d2e" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:15:17Z", "timestamp" : { "$numberLong" : "1508768117199" } }, "reference-count" : 25, "publisher" : "Wiley-Blackwell", "issue" : "4", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 6452, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Int. J. Quant. Chem." ], "published-print" : { "date-parts" : [ [ 1998 ] ] }, "DOI" : "10.1002/(sici)1097-461x(1998)66:4<261::aid-qua1>3.0.co;2-t", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 25 ] ], "date-time" : "2002-08-25T21:09:51Z", "timestamp" : { "$numberLong" : "1030309791000" } }, "page" : "261-272", "source" : "Crossref", "is-referenced-by-count" : 5, "title" : [ "Renormalized perturbation theory by the moment method for degenerate states: Anharmonic oscillators" ], "prefix" : "10.1002", "volume" : "66", "author" : [ { "given" : "Marcelo D.", "family" : "Radicioni", "affiliation" : [] }, { "given" : "Carlos G.", "family" : "Diaz", "affiliation" : [] }, { "given" : "Francisco M.", "family" : "Fern�ndez", "affiliation" : [] } ], "member" : "311", "reference" : [ { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB1", "author" : "Swenson", "volume" : "57", "first-page" : "1734", "year" : "1972", "journal-title" : "J. Chem. Phys.", "DOI" : "10.1063/1.1678462", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB2", "author" : "Killingbeck", "volume" : "65", "first-page" : "87", "year" : "1978", "journal-title" : "Phys. Lett. A", "DOI" : "10.1016/0375-9601(78)90580-7", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB3", "author" : "Fernández", "volume" : "43", "year" : "1987", "unstructured" : "and Hypervirial Theorems, Lecture Notes in Chemistry, Vol. 43, (Springer, Berlin, 1987).", "volume-title" : "Hypervirial Theorems, Lecture Notes in Chemistry", "DOI" : "10.1007/978-3-642-93349-3", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB4", "author" : "Arteca", "volume" : "53", "year" : "1990", "unstructured" : "and Large Order Perturbation Theory and Summation Methods in Quantum Mechanics, Lecture Notes in Chemistry, Vol. 53, (Springer, Berlin, 1990).", "volume-title" : "Large Order Perturbation Theory and Summation Methods in Quantum Mechanics, Lecture Notes in Chemistry", "DOI" : "10.1007/978-3-642-93469-8", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB5", "author" : "Ader", "volume" : "97", "first-page" : "178", "year" : "1983", "journal-title" : "Phys. Lett. A", "DOI" : "10.1016/0375-9601(83)90352-3", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB6", "author" : "Blankenbecler", "volume" : "21", "first-page" : "1055", "year" : "1980", "journal-title" : "Phys. Rev. D", "DOI" : "10.1103/PhysRevD.21.1055", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB7", "author" : "Fernández", "volume" : "26", "first-page" : "497", "year" : "1984", "journal-title" : "Int. J. Quantum Chem.", "DOI" : "10.1002/qua.560260408", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB8", "author" : "Arteca", "volume" : "128", "first-page" : "253", "year" : "1984", "journal-title" : "Physica A", "DOI" : "10.1016/0378-4371(84)90090-6", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB9", "author" : "Fernández", "volume" : "28", "first-page" : "603", "year" : "1985", "journal-title" : "Int. J. Quantum Chem.", "DOI" : "10.1002/qua.560280507", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB10", "author" : "Fernández", "volume" : "20", "first-page" : "3777", "year" : "1987", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/20/12/027", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB11", "author" : "Austin", "volume" : "18", "first-page" : "449", "year" : "1984", "journal-title" : "Int. J. Quantum Chem. S", "DOI" : "10.1002/qua.560260841", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB12", "author" : "Killingbeck", "volume" : "18", "first-page" : "793", "year" : "1985", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/18/5/012", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB13", "author" : "Killingbeck", "volume" : "19", "first-page" : "705", "year" : "1986", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/19/5/023", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB14", "author" : "Witwit", "volume" : "24", "first-page" : "3053", "year" : "1991", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/24/13/020", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB15", "author" : "Witwit", "volume" : "24", "first-page" : "4535", "year" : "1991", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/24/19/017", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB16", "author" : "Witwit", "volume" : "33", "first-page" : "4196", "year" : "1992", "journal-title" : "J. Math. Phys.", "DOI" : "10.1063/1.529818", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB17", "author" : "Witwit", "volume" : "36", "first-page" : "187", "year" : "1995", "journal-title" : "J. Math. Phys.", "DOI" : "10.1063/1.531299", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB18", "author" : "Killingbeck", "volume" : "14", "first-page" : "1005", "year" : "1981", "journal-title" : "J. Phys. A", "DOI" : "10.1088/0305-4470/14/5/020", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB19", "author" : "Killingbeck", "volume" : "14", "first-page" : "l461", "year" : "1981", "journal-title" : "J. Phys. B", "DOI" : "10.1088/0022-3700/14/14/001", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB20", "author" : "Fernández", "volume" : "25", "first-page" : "492", "year" : "1992", "journal-title" : "J. Phys. A" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB21", "author" : "Fernández", "volume" : "165", "first-page" : "314", "year" : "1992", "journal-title" : "Phys. Lett. A", "DOI" : "10.1016/0375-9601(92)90500-L", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB22", "author" : "Fernández", "volume" : "178", "first-page" : "11", "year" : "1993", "journal-title" : "Phys. Lett. A", "DOI" : "10.1016/0375-9601(93)90719-G", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB23", "author" : "Simon", "volume" : "58", "first-page" : "76", "year" : "1970", "journal-title" : "Ann. Phys. (N.Y.)", "DOI" : "10.1016/0003-4916(70)90240-X", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB24", "author" : "Press", "year" : "1986", "unstructured" : "and Numerical Recipes, (Cambridge University Press, Cambridge, 1986).", "volume-title" : "Numerical Recipes" }, { "key" : "10.1002/(SICI)1097-461X(1998)66:4<261::AID-QUA1>3.0.CO;2-T-BIB25", "author" : "Spirko", "volume" : "102", "first-page" : "8916", "year" : "1995", "journal-title" : "J. Chem. Phys.", "DOI" : "10.1063/1.468945", "doi-asserted-by" : "crossref" } ], "container-title" : [ "International Journal of Quantum Chemistry" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F(SICI)1097-461X(1998)66:4%3C261::AID-QUA1%3E3.0.CO;2-T", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 7, 23 ] ], "date-time" : "2017-07-23T04:32:16Z", "timestamp" : { "$numberLong" : "1500784336000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 1998 ] ] }, "references-count" : 25, "URL" : "http://dx.doi.org/10.1002/(sici)1097-461x(1998)66:4<261::aid-qua1>3.0.co;2-t", "relation" : { "cites" : [] }, "ISSN" : [ "0020-7608", "1097-461X" ], "issn-type" : [ { "value" : "0020-7608", "type" : "print" }, { "value" : "1097-461X", "type" : "electronic" } ], "subject" : [ "Physical and Theoretical Chemistry", "Atomic and Molecular Physics, and Optics", "Condensed Matter Physics" ] } -{ "_id" : { "$oid" : "5a5515c788a035a45bd77a1b" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:24:07Z", "timestamp" : { "$numberLong" : "1508768647545" } }, "reference-count" : 10, "publisher" : "Wiley-Blackwell", "issue" : "3", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 4991, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Cell Biochem. Funct." ], "published-print" : { "date-parts" : [ [ 2002, 9 ] ] }, "DOI" : "10.1002/cbf.935", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 9, 11 ] ], "date-time" : "2002-09-11T02:05:28Z", "timestamp" : { "$numberLong" : "1031709928000" } }, "page" : "191-194", "source" : "Crossref", "is-referenced-by-count" : 6, "title" : [ "Cytokine detection in HIV-1/HHV-8 co-infected subjects" ], "prefix" : "10.1002", "volume" : "20", "author" : [ { "given" : "Agostino", "family" : "Pugliese", "affiliation" : [] }, { "given" : "Donato", "family" : "Torre", "affiliation" : [] }, { "given" : "Andrea", "family" : "Saini", "affiliation" : [] }, { "given" : "Gloria", "family" : "Pagliano", "affiliation" : [] }, { "given" : "Gloria", "family" : "Gallo", "affiliation" : [] }, { "given" : "Pietro Giorgio", "family" : "Pistono", "affiliation" : [] }, { "given" : "Gian Carlo", "family" : "Paggi", "affiliation" : [] } ], "member" : "311", "published-online" : { "date-parts" : [ [ 2002 ] ] }, "reference" : [ { "key" : "10.1002/cbf.935-BIB1", "author" : "Chang", "volume" : "266", "first-page" : "1865", "year" : "1994", "journal-title" : "Science", "DOI" : "10.1126/science.7997879", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/cbf.935-BIB2", "author" : "Drago", "volume" : "135", "first-page" : "71", "year" : "1999", "journal-title" : "Arch. Dermatol" }, { "key" : "10.1002/cbf.935-BIB3", "author" : "Pugliese", "volume" : "24", "first-page" : "258", "year" : "2000", "journal-title" : "Cancer Detect Prevent" }, { "key" : "10.1002/cbf.935-BIB4", "author" : "Clerici", "volume" : "15", "first-page" : "575", "year" : "1994", "journal-title" : "Immunol Today", "DOI" : "10.1016/0167-5699(94)90220-8", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/cbf.935-BIB5", "author" : "Zhang", "volume" : "185", "first-page" : "837", "year" : "1997", "journal-title" : "J Exp Med" }, { "key" : "10.1002/cbf.935-BIB6", "author" : "Vincenzi", "volume" : "62", "first-page" : "34", "year" : "1997", "journal-title" : "J Leuk Biol" }, { "key" : "10.1002/cbf.935-BIB7", "author" : "Stoll", "volume" : "28", "first-page" : "3231", "year" : "1998", "journal-title" : "Eur J Immunol", "DOI" : "10.1002/(SICI)1521-4141(199810)28:10<3231::AID-IMMU3231>3.0.CO;2-Q", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/cbf.935-BIB8", "author" : "Fiorelli", "volume" : "91", "first-page" : "956", "year" : "1998", "journal-title" : "Blood" }, { "key" : "10.1002/cbf.935-BIB9", "author" : "Boshoff", "volume" : "75", "first-page" : "57", "year" : "1998", "journal-title" : "Adv Cancer Res.", "DOI" : "10.1016/S0065-230X(08)60739-3", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/cbf.935-BIB10", "author" : "Fakoya", "volume" : "11", "first-page" : "1445", "year" : "1997", "journal-title" : "AIDS", "DOI" : "10.1097/00002030-199712000-00008", "doi-asserted-by" : "crossref" } ], "container-title" : [ "Cell Biochemistry and Function" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2Fcbf.935", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 7, 27 ] ], "date-time" : "2017-07-27T01:56:41Z", "timestamp" : { "$numberLong" : "1501120601000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2002 ] ] }, "references-count" : 10, "URL" : "http://dx.doi.org/10.1002/cbf.935", "relation" : { "cites" : [] }, "ISSN" : [ "0263-6484", "1099-0844" ], "issn-type" : [ { "value" : "0263-6484", "type" : "print" }, { "value" : "1099-0844", "type" : "electronic" } ], "subject" : [ "Clinical Biochemistry", "Cell Biology", "Biochemistry", "General Medicine" ] } -{ "_id" : { "$oid" : "5a5515c788a035a45bd77a35" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:24:07Z", "timestamp" : { "$numberLong" : "1508768647674" } }, "reference-count" : 31, "publisher" : "Wiley-Blackwell", "issue" : "4", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 4946, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Angew. Chem. Int. Ed." ], "published-print" : { "date-parts" : [ [ 2002, 2, 15 ] ] }, "DOI" : "10.1002/1521-3773(20020215)41:4<583::aid-anie583>3.0.co;2-i", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 25 ] ], "date-time" : "2002-08-25T23:46:56Z", "timestamp" : { "$numberLong" : "1030319216000" } }, "page" : "583-585", "source" : "Crossref", "is-referenced-by-count" : 126, "title" : [ "Noninterpenetrating Square-Grid Coordination Polymers With Dimensions of 25×25 Å2 Prepared by UsingN,N′-Type Ligands: The First Chiral Square-Grid Coordination Polymer" ], "prefix" : "10.1002", "volume" : "41", "author" : [ { "given" : "Neil G.", "family" : "Pschirer", "affiliation" : [] }, { "given" : "Delia M.", "family" : "Ciurtin", "affiliation" : [] }, { "given" : "Mark D.", "family" : "Smith", "affiliation" : [] }, { "given" : "Uwe H. F.", "family" : "Bunz", "affiliation" : [] }, { "given" : "Hans-Conrad", "family" : "zur Loye", "affiliation" : [] } ], "member" : "311", "reference" : [ { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB1", "journal-title" : "Design of Solids From Molecular Building Blocks: Golden Opportunities for Solid State Chemistry" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB2.1", "author" : "Dong", "volume" : "112", "first-page" : "4441", "year" : "2000", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/1521-3757(20001201)112:23<4441::AID-ANGE4441>3.0.CO;2-B", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB2.2", "volume" : "39", "first-page" : "4271", "year" : "2000", "journal-title" : "Angew. Chem. Int. Ed.", "DOI" : "10.1002/1521-3773(20001201)39:23<4271::AID-ANIE4271>3.0.CO;2-1", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB3", "author" : "Kang", "volume" : "120", "first-page" : "3650", "year" : "1998", "journal-title" : "J. Am. Chem. Soc.", "DOI" : "10.1021/ja973898+", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB4", "author" : "Kang", "volume" : "120", "first-page" : "7389", "year" : "1998", "journal-title" : "J. Am. Chem. Soc.", "DOI" : "10.1021/ja980927n", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB5.1", "author" : "Yünlü", "volume" : "97", "first-page" : "863", "year" : "1985", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/ange.19850971016", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB5.2", "volume" : "24", "first-page" : "879", "year" : "1985", "journal-title" : "Angew. Chem. Int. Ed. Engl.", "DOI" : "10.1002/anie.198508791", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB6", "author" : "Chen", "volume" : "291", "first-page" : "1021", "year" : "2001", "journal-title" : "Science", "DOI" : "10.1126/science.1056598", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB7", "author" : "Dong", "volume" : "11", "first-page" : "1413", "year" : "1999", "journal-title" : "Chem. Mater.", "DOI" : "10.1021/cm990082u", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB8", "author" : "Dong", "volume" : "2", "first-page" : "861", "year" : "2000", "journal-title" : "Solid State Sci.", "DOI" : "10.1016/S1293-2558(00)01094-3", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB9A", "author" : "Biradha", "first-page" : "15", "year" : "2001", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/b007014i", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB9B", "unstructured" : "P. J. Stang, B. Olenyuk, Acc. Chem. Res., 1977, 30, 502;", "DOI" : "10.1021/ar9602011", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB9C", "unstructured" : "P. J. Stang, D. H. Cao, S. Saito, A. M. Arif, J. Am. Chem. Soc. 1995, 117, 6273.", "DOI" : "10.1021/ja00128a015", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB10", "author" : "Dong", "volume" : "12", "first-page" : "1156", "year" : "2000", "journal-title" : "Chem. Mater.", "DOI" : "10.1021/cm9907965", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB11", "author" : "Zaworotko", "first-page" : "1", "year" : "2001", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/b007127g", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB12.1", "author" : "Biradha", "volume" : "112", "first-page" : "4001", "year" : "2000", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/1521-3757(20001103)112:21<4001::AID-ANGE4001>3.0.CO;2-5", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB12.2", "volume" : "39", "first-page" : "3843", "year" : "2000", "journal-title" : "Angew. Chem. Int. Ed.", "DOI" : "10.1002/1521-3773(20001103)39:21<3843::AID-ANIE3843>3.0.CO;2-#", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB13.1", "author" : "Batten", "volume" : "110", "first-page" : "1558", "year" : "1998", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/(SICI)1521-3757(19980605)110:11<1558::AID-ANGE1558>3.0.CO;2-7", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB13.2", "volume" : "37", "first-page" : "1460", "year" : "1998", "journal-title" : "Angew. Chem. Int. Ed.", "DOI" : "10.1002/(SICI)1521-3773(19980619)37:11<1460::AID-ANIE1460>3.0.CO;2-Z", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB14", "unstructured" : "U. Bunz, H.-C. zur Loye, unpublished results, 2001." }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB17", "unstructured" : "A. M. C. T. PLATON, Utrecht University, Utrecht, The Netherlands, Spek, A.L. 1998." }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB18", "author" : "Ezuhara", "volume" : "121", "first-page" : "3279", "year" : "1999", "journal-title" : "J. Am. Chem. Soc.", "DOI" : "10.1021/ja9819918", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB19.1", "author" : "Biradha", "volume" : "111", "first-page" : "584", "year" : "1999", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/(SICI)1521-3757(19990215)111:4<584::AID-ANGE584>3.0.CO;2-Z", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB19.2", "volume" : "38", "first-page" : "492", "year" : "1999", "journal-title" : "Angew. Chem. Int. Ed.", "DOI" : "10.1002/(SICI)1521-3773(19990215)38:4<492::AID-ANIE492>3.0.CO;2-#", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB20", "author" : "Chen", "first-page" : "4010", "year" : "2000", "journal-title" : "J. Chem. Soc. Dalton Trans.", "DOI" : "10.1039/b007004l", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB21", "author" : "Fragoso", "first-page" : "1547", "year" : "2000", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/b002360o", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB22", "author" : "Carlucci", "first-page" : "1319", "year" : "2000", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/b002021o", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB23", "author" : "Blake", "first-page" : "665", "year" : "2000", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/a909868b", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB24", "author" : "Carlucci", "first-page" : "1837", "year" : "1998", "journal-title" : "Chem. Commun.", "DOI" : "10.1039/a803662d", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB25.1", "author" : "Mamula", "volume" : "111", "first-page" : "3129", "year" : "1999", "journal-title" : "Angew. Chem.", "DOI" : "10.1002/(SICI)1521-3757(19991004)111:19<3129::AID-ANGE3129>3.0.CO;2-X", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1521-3773(20020215)41:4<583::AID-ANIE583>3.0.CO;2-I-BIB25.2", "volume" : "38", "first-page" : "2945", "year" : "1999", "journal-title" : "Angew. Chem. Int. Ed.", "DOI" : "10.1002/(SICI)1521-3773(19991004)38:19<2945::AID-ANIE2945>3.0.CO;2-D", "doi-asserted-by" : "crossref" } ], "container-title" : [ "Angewandte Chemie International Edition" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F1521-3773(20020215)41:4%3C583::AID-ANIE583%3E3.0.CO;2-I", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 7, 27 ] ], "date-time" : "2017-07-27T01:55:53Z", "timestamp" : { "$numberLong" : "1501120553000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2002, 2, 15 ] ] }, "references-count" : 31, "URL" : "http://dx.doi.org/10.1002/1521-3773(20020215)41:4<583::aid-anie583>3.0.co;2-i", "relation" : { "cites" : [] }, "ISSN" : [ "1433-7851", "1521-3773" ], "issn-type" : [ { "value" : "1433-7851", "type" : "print" }, { "value" : "1521-3773", "type" : "electronic" } ], "subject" : [ "General Chemistry", "Catalysis" ] } -{ "_id" : { "$oid" : "5a5513f388a035a45bd63593" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:15:01Z", "timestamp" : { "$numberLong" : "1508768101957" } }, "reference-count" : 8, "publisher" : "Wiley-Blackwell", "issue" : "5", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 6332, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Med. Pediatr. Oncol." ], "published-print" : { "date-parts" : [ [ 1998, 5 ] ] }, "DOI" : "10.1002/(sici)1096-911x(199805)30:5<297::aid-mpo7>3.0.co;2-a", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 25 ] ], "date-time" : "2002-08-25T20:05:22Z", "timestamp" : { "$numberLong" : "1030305922000" } }, "page" : "297-300", "source" : "Crossref", "is-referenced-by-count" : 5, "title" : [ "Thallium-201 uptake in rebound thymic hyperplasia" ], "prefix" : "10.1002", "volume" : "30", "author" : [ { "given" : "Derek J.", "family" : "Roebuck", "affiliation" : [] }, { "given" : "Wayne D.", "family" : "Nicholls", "affiliation" : [] }, { "given" : "Elizabeth J.", "family" : "Bernard", "affiliation" : [] }, { "given" : "Stewart J.", "family" : "Kellie", "affiliation" : [] }, { "given" : "Robert", "family" : "Howman-Giles", "affiliation" : [] } ], "member" : "311", "reference" : [ { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB1", "author" : "Choyke", "volume" : "149", "first-page" : "269", "year" : "1987", "journal-title" : "AJR", "DOI" : "10.2214/ajr.149.2.269", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB2", "author" : "Cohen", "volume" : "135", "first-page" : "151", "year" : "1980", "journal-title" : "AJR", "DOI" : "10.2214/ajr.135.1.151", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB3", "author" : "Nadel", "volume" : "23", "first-page" : "243", "year" : "1993", "journal-title" : "Semin Nucl Med", "DOI" : "10.1016/S0001-2998(05)80105-9", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB4", "author" : "Howman-Giles", "volume" : "36", "first-page" : "1372", "year" : "1995", "journal-title" : "J Nucl Med" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB5", "author" : "Harris", "volume" : "34", "first-page" : "1326", "year" : "1993", "journal-title" : "J Nucl Med" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB6", "author" : "Fletcher", "volume" : "196", "first-page" : "851", "year" : "1995", "journal-title" : "Radiology", "DOI" : "10.1148/radiology.196.3.7644655", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB7", "author" : "Peylan-Ramu", "volume" : "7", "first-page" : "1800", "year" : "1989", "journal-title" : "J Clin Oncol", "DOI" : "10.1200/JCO.1989.7.12.1800", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/(SICI)1096-911X(199805)30:5<297::AID-MPO7>3.0.CO;2-A-BIB8", "author" : "Israel", "volume" : "34", "first-page" : "1330", "year" : "1993", "journal-title" : "J Nucl Med" } ], "container-title" : [ "Medical and Pediatric Oncology" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F(SICI)1096-911X(199805)30:5%3C297::AID-MPO7%3E3.0.CO;2-A", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 7, 23 ] ], "date-time" : "2017-07-23T03:41:41Z", "timestamp" : { "$numberLong" : "1500781301000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 1998, 5 ] ] }, "references-count" : 8, "URL" : "http://dx.doi.org/10.1002/(sici)1096-911x(199805)30:5<297::aid-mpo7>3.0.co;2-a", "relation" : { "cites" : [] }, "ISSN" : [ "0098-1532", "1096-911X" ], "issn-type" : [ { "value" : "0098-1532", "type" : "print" }, { "value" : "1096-911X", "type" : "electronic" } ], "subject" : [ "Pediatrics, Perinatology, and Child Health", "Cancer Research", "Oncology" ] } -{ "_id" : { "$oid" : "5a55181488a035a45bd8f11c" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:34:55Z", "timestamp" : { "$numberLong" : "1508769295121" } }, "reference-count" : 6, "publisher" : "Wiley-Blackwell", "issue" : "1", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 5722, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Int. J. Network Mgmt." ], "published-print" : { "date-parts" : [ [ 2000, 1 ] ] }, "DOI" : "10.1002/(sici)1099-1190(200001/02)10:1<51::aid-nem357>3.0.co;2-g", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 25 ] ], "date-time" : "2002-08-25T19:50:10Z", "timestamp" : { "$numberLong" : "1030305010000" } }, "page" : "51-55", "source" : "Crossref", "is-referenced-by-count" : 0, "title" : [ "Computer speech: streaming technology" ], "prefix" : "10.1002", "volume" : "10", "author" : [ { "given" : "Judith M.", "family" : "Myerson", "affiliation" : [] } ], "member" : "311", "reference" : [ { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB1", "author" : "Myerson", "year" : "1999", "unstructured" : "Text-to-Speech Server Overview. Clientbreak Server Technology Handbook. NY: CRC Press (Auerbach Publishers) 1999.", "volume-title" : "Clientbreak Server Technology Handbook" }, { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB2", "volume" : "5", "first-page" : "64", "journal-title" : "Building WebSites" }, { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB3", "author" : "Muller", "year" : "1998", "unstructured" : "Switched Token-Ring Networks. DataPro, 1998.", "volume-title" : "DataPro" }, { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB4", "author" : "Swoyer", "year" : "1998", "unstructured" : "Navy Warns of New Hacking Technique, ent, vol. 3, 1998.", "series-title" : "ent" }, { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB5", "author" : "Witherspoon", "year" : "1995", "unstructured" : "Optimizing Client/Server Networks. Chicago, Ill: IDG Books (Compaq Press), 1995.", "volume-title" : "Optimizing Client/Server Networks" }, { "key" : "10.1002/(SICI)1099-1190(200001/02)10:1<51::AID-NEM357>3.0.CO;2-G-BIB6", "author" : "Giles", "first-page" : "63", "unstructured" : "How to Add Audio and Video Files. Building WEBSITES, vol. 5, 63.", "series-title" : "Building WEBS" } ], "container-title" : [ "International Journal of Network Management" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F(SICI)1099-1190(200001%2F02)10:1%3C51::AID-NEM357%3E3.0.CO;2-G", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 4, 4 ] ], "date-time" : "2017-04-04T12:43:11Z", "timestamp" : { "$numberLong" : "1491309791000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2000, 1 ] ] }, "references-count" : 6, "URL" : "http://dx.doi.org/10.1002/(sici)1099-1190(200001/02)10:1<51::aid-nem357>3.0.co;2-g", "relation" : { "cites" : [] }, "ISSN" : [ "1055-7148", "1099-1190" ], "issn-type" : [ { "value" : "1055-7148", "type" : "print" }, { "value" : "1099-1190", "type" : "electronic" } ], "subject" : [ "Computer Networks and Communications", "Computer Science Applications" ] } -{ "_id" : { "$oid" : "5a55196d88a035a45bda113b" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:41:55Z", "timestamp" : { "$numberLong" : "1508769715884" } }, "reference-count" : 35, "publisher" : "Elsevier BV", "issue" : "4", "license" : [ { "URL" : "http://www.elsevier.com/tdm/userlicense/1.0/", "start" : { "date-parts" : [ [ 2001, 10, 1 ] ], "date-time" : "2001-10-01T00:00:00Z", "timestamp" : { "$numberLong" : "1001894400000" } }, "delay-in-days" : 0, "content-version" : "tdm" }, { "URL" : "http://creativecommons.org/licenses/by-nc-nd/4.0/", "start" : { "date-parts" : [ [ 2016, 10, 7 ] ], "date-time" : "2016-10-07T00:00:00Z", "timestamp" : { "$numberLong" : "1475798400000" } }, "delay-in-days" : 5485, "content-version" : "vor" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Molecular Therapy" ], "published-print" : { "date-parts" : [ [ 2001, 10 ] ] }, "DOI" : "10.1006/mthe.2001.0464", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 9, 18 ] ], "date-time" : "2002-09-18T19:46:30Z", "timestamp" : { "$numberLong" : "1032378390000" } }, "page" : "356-364", "source" : "Crossref", "is-referenced-by-count" : 31, "title" : [ "Human and Mouse IFN-β Gene Therapy Exhibits Different Anti-tumor Mechanisms in Mouse Models" ], "prefix" : "10.1016", "volume" : "4", "author" : [ { "given" : "Xiao-Qiang", "family" : "Qin", "affiliation" : [] }, { "given" : "Carla", "family" : "Beckham", "affiliation" : [] }, { "given" : "Jennifer L.", "family" : "Brown", "affiliation" : [] }, { "given" : "Matvey", "family" : "Lukashev", "affiliation" : [] }, { "given" : "James", "family" : "Barsoum", "affiliation" : [] } ], "member" : "78", "container-title" : [ "Molecular Therapy" ], "link" : [ { "URL" : "http://api.elsevier.com/content/article/PII:S1525001601904642?httpAccept=text/xml", "content-type" : "text/xml", "content-version" : "vor", "intended-application" : "text-mining" }, { "URL" : "http://api.elsevier.com/content/article/PII:S1525001601904642?httpAccept=text/plain", "content-type" : "text/plain", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 6, 14 ] ], "date-time" : "2017-06-14T16:51:52Z", "timestamp" : { "$numberLong" : "1497459112000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2001, 10 ] ] }, "references-count" : 35, "alternative-id" : [ "S1525001601904642" ], "URL" : "http://dx.doi.org/10.1006/mthe.2001.0464", "ISSN" : [ "1525-0016" ], "issn-type" : [ { "value" : "1525-0016", "type" : "print" } ], "subject" : [ "Molecular Medicine", "Genetics", "Molecular Biology", "Pharmacology", "Drug Discovery" ] } -{ "_id" : { "$oid" : "5a55165c88a035a45bd7e535" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:27:04Z", "timestamp" : { "$numberLong" : "1508768824539" } }, "reference-count" : 6, "publisher" : "Wiley-Blackwell", "issue" : "24", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 5722, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Rapid Commun. Mass Spectrom." ], "published-print" : { "date-parts" : [ [ 2000, 12, 30 ] ] }, "DOI" : "10.1002/1097-0231(20001230)14:24<2357::aid-rcm168>3.0.co;2-2", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 9, 11 ] ], "date-time" : "2002-09-11T00:24:57Z", "timestamp" : { "$numberLong" : "1031703897000" } }, "page" : "2357-2361", "source" : "Crossref", "is-referenced-by-count" : 2, "title" : [ "Electron impact fragmentation mechanisms of some cyclic esters with helical structures" ], "prefix" : "10.1002", "volume" : "14", "author" : [ { "given" : "Jiangtao", "family" : "He", "affiliation" : [] }, { "given" : "Aihua", "family" : "Nie", "affiliation" : [] }, { "given" : "Meiyu", "family" : "He", "affiliation" : [] }, { "given" : "Xiaoran", "family" : "He", "affiliation" : [] }, { "given" : "Zhenpei", "family" : "Yu", "affiliation" : [] }, { "given" : "Xiulin", "family" : "Ye", "affiliation" : [] }, { "given" : "Qiyi", "family" : "Xing", "affiliation" : [] } ], "member" : "311", "published-online" : { "date-parts" : [ [ 2000 ] ] }, "reference" : [ { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB1", "author" : "Nie", "volume" : "8", "first-page" : "141", "year" : "1997", "journal-title" : "Chinese Chem. Lett." }, { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB2", "author" : "Chenevert", "first-page" : "782", "year" : "1982", "journal-title" : "Synthesis", "DOI" : "10.1055/s-1982-29945", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB3", "author" : "Porter", "first-page" : "296", "year" : "1985", "unstructured" : "Mass Spectrometry of Heterocyclic Compounds (2nd edn). John Wiley & Sons: New York, 1985; 296.", "volume-title" : "Mass Spectrometry of Heterocyclic Compounds" }, { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB4", "author" : "Ková??ik", "volume" : "34", "first-page" : "1322", "year" : "1999", "journal-title" : "J. Mass Spectrom.", "DOI" : "10.1002/(SICI)1096-9888(199912)34:12<1322::AID-JMS888>3.0.CO;2-#", "doi-asserted-by" : "crossref" }, { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB5", "author" : "Mclafferty", "year" : "1993", "unstructured" : "Interpretation of Mass Spectra (4th edn). University Science Books: Sansalito, CA, 1993.", "volume-title" : "Interpretation of Mass Spectra" }, { "key" : "10.1002/1097-0231(20001230)14:24<2357::AID-RCM168>3.0.CO;2-2-BIB6", "author" : "Williams", "year" : "1996", "unstructured" : "Spectroscopic Methods in Organic Chemistry (5th edn). McGraw-Hill: London, 1996.", "volume-title" : "Spectroscopic Methods in Organic Chemistry" } ], "container-title" : [ "Rapid Communications in Mass Spectrometry" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F1097-0231(20001230)14:24%3C2357::AID-RCM168%3E3.0.CO;2-2", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 7, 31 ] ], "date-time" : "2017-07-31T21:16:20Z", "timestamp" : { "$numberLong" : "1501535780000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2000 ] ] }, "references-count" : 6, "URL" : "http://dx.doi.org/10.1002/1097-0231(20001230)14:24<2357::aid-rcm168>3.0.co;2-2", "relation" : { "cites" : [] }, "ISSN" : [ "0951-4198", "1097-0231" ], "issn-type" : [ { "value" : "0951-4198", "type" : "print" }, { "value" : "1097-0231", "type" : "electronic" } ], "subject" : [ "Organic Chemistry", "Analytical Chemistry", "Spectroscopy" ] } -{ "_id" : { "$oid" : "5a55196988a035a45bda0cb1" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:41:48Z", "timestamp" : { "$numberLong" : "1508769708308" } }, "reference-count" : 44, "publisher" : "Elsevier BV", "issue" : "1", "license" : [ { "URL" : "http://www.elsevier.com/tdm/userlicense/1.0/", "start" : { "date-parts" : [ [ 1998, 11, 1 ] ], "date-time" : "1998-11-01T00:00:00Z", "timestamp" : { "$numberLong" : "909878400000" } }, "delay-in-days" : 0, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Toxicology and Applied Pharmacology" ], "published-print" : { "date-parts" : [ [ 1998, 11 ] ] }, "DOI" : "10.1006/taap.1998.8543", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 9, 18 ] ], "date-time" : "2002-09-18T22:01:25Z", "timestamp" : { "$numberLong" : "1032386485000" } }, "page" : "102-108", "source" : "Crossref", "is-referenced-by-count" : 44, "title" : [ "Role of CYP1A2 in the Hepatotoxicity of Acetaminophen: Investigations UsingCyp1a2Null Mice" ], "prefix" : "10.1006", "volume" : "153", "author" : [ { "given" : "Robert P.", "family" : "Tonge", "affiliation" : [] }, { "given" : "Edward J.", "family" : "Kelly", "affiliation" : [] }, { "given" : "Sam A.", "family" : "Bruschi", "affiliation" : [] }, { "given" : "Tom", "family" : "Kalhorn", "affiliation" : [] }, { "given" : "David L.", "family" : "Eaton", "affiliation" : [] }, { "given" : "Daniel W.", "family" : "Nebert", "affiliation" : [] }, { "given" : "Sidney D.", "family" : "Nelson", "affiliation" : [] } ], "member" : "78", "container-title" : [ "Toxicology and Applied Pharmacology" ], "link" : [ { "URL" : "http://api.elsevier.com/content/article/PII:S0041008X9898543X?httpAccept=text/xml", "content-type" : "text/xml", "content-version" : "vor", "intended-application" : "text-mining" }, { "URL" : "http://api.elsevier.com/content/article/PII:S0041008X9898543X?httpAccept=text/plain", "content-type" : "text/plain", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 6, 14 ] ], "date-time" : "2017-06-14T16:51:33Z", "timestamp" : { "$numberLong" : "1497459093000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 1998, 11 ] ] }, "references-count" : 44, "alternative-id" : [ "S0041008X9898543X" ], "URL" : "http://dx.doi.org/10.1006/taap.1998.8543", "ISSN" : [ "0041-008X" ], "issn-type" : [ { "value" : "0041-008X", "type" : "print" } ], "subject" : [ "Toxicology", "Pharmacology" ] } -{ "_id" : { "$oid" : "5a55170088a035a45bd8490d" }, "indexed" : { "date-parts" : [ [ 2017, 10, 23 ] ], "date-time" : "2017-10-23T14:30:12Z", "timestamp" : { "$numberLong" : "1508769012416" } }, "reference-count" : 37, "publisher" : "Wiley-Blackwell", "issue" : "2", "license" : [ { "URL" : "http://doi.wiley.com/10.1002/tdm_license_1.1", "start" : { "date-parts" : [ [ 2015, 9, 1 ] ], "date-time" : "2015-09-01T00:00:00Z", "timestamp" : { "$numberLong" : "1441065600000" } }, "delay-in-days" : 5356, "content-version" : "tdm" } ], "content-domain" : { "domain" : [], "crossmark-restriction" : false }, "short-container-title" : [ "Am. J. Ind. Med." ], "published-print" : { "date-parts" : [ [ 2001, 2 ] ] }, "DOI" : "10.1002/1097-0274(200102)39:2<218::aid-ajim1009>3.0.co;2-4", "type" : "journal-article", "created" : { "date-parts" : [ [ 2002, 8, 25 ] ], "date-time" : "2002-08-25T20:41:50Z", "timestamp" : { "$numberLong" : "1030308110000" } }, "page" : "218-226", "source" : "Crossref", "is-referenced-by-count" : 10, "title" : [ "The work environment impact assessment: A methodologic framework for evaluating health-based interventions" ], "prefix" : "10.1002", "volume" : "39", "author" : [ { "given" : "Beth J.", "family" : "Rosenberg", "affiliation" : [] }, { "given" : "Elizabeth M.", "family" : "Barbeau", "affiliation" : [] }, { "given" : "Rafael", "family" : "Moure-Eraso", "affiliation" : [] }, { "given" : "Charles", "family" : "Levenstein", "affiliation" : [] } ], "member" : "311", "published-online" : { "date-parts" : [ [ 2001 ] ] }, "reference" : [ { "key" : "BIB1", "author" : "Barbeau", "year" : "1998", "unstructured" : "1998. Displaced tobacco workers, public health, and tobacco policy: moving beyond jobs versus health. Doctoral thesis, Department of Work Environment, University of Massachusetts, Lowell." }, { "key" : "BIB2", "author" : "Berberian", "volume" : "37", "first-page" : "126", "year" : "1987", "journal-title" : "J Occup Environ Med" }, { "key" : "BIB3", "author" : "Bignami", "volume" : "80", "first-page" : "265", "year" : "1981", "journal-title" : "Mutat Res", "DOI" : "10.1016/0027-5107(81)90099-3", "doi-asserted-by" : "crossref" }, { "key" : "BIB4", "author" : "Britton", "year" : "1989", "unstructured" : "1989. The post-Alar era dawns chilly for apple growers. Boston Globe. Oct. 25, p. 34." }, { "key" : "BIB5", "author" : "Brusick", "year" : "1976", "unstructured" : "1976. Mutagen and oncogen Study on 1,1-dimethylhydrazine. Prepared for the Aerospace Med. Res. Lab., Aeropsace Med. Div. Airforce Systems Command, Wright- Patterson A.F.B., Dayton OH Litton Bionetics, Inc., Kensington, MD. NTIS AD-A035475." }, { "key" : "BIB6", "author" : "Chemical Marketing Reporter", "year" : "1984", "unstructured" : "Chemical Marketing Reporter. 1984. Uniroyal pesticide to be reviewed by EPA: regulatory action prompted by its toxicity. July 23." }, { "key" : "BIB7", "author" : "Chemical Marketing Reporter", "year" : "1989", "unstructured" : "Chemical Marketing Reporter. 1989. Uniroyal pulls apple pesticide from market, citing controversy. June 5." }, { "key" : "BIB8", "year" : "1990", "unstructured" : "Du Pont Chemical Company. 1990. MSDS No. M0000057, p. 2." }, { "key" : "BIB9", "year" : "1993", "unstructured" : "Farm Chemicals Handbook '93. 1993. Willoughby, OH: Meister.", "volume-title" : "Farm Chemicals Handbook '93" }, { "key" : "BIB10", "year" : "1985", "unstructured" : "Farm Chemicals Handbook '85. 1985. Willoughby, OH: Meister.", "volume-title" : "Farm Chemicals Handbook '85" }, { "key" : "BIB11", "author" : "Federal Register", "year" : "1989", "unstructured" : "Federal Register. 1989. Daminozide: termination of special review of food uses. Vol. 54, No. 216, p. 47482, November 14." }, { "key" : "BIB12", "author" : "Fenske", "first-page" : "729", "year" : "2000", "unstructured" : "2000. Agricultural workers. In: editors. Occupational health: recognizing and preventing work-related disease and injury. 4th ed. Philadelphia: Lippincott Williams and Wilkins, p. 729-748.", "volume-title" : "Occupational health: recognizing and preventing work-related disease and injury" }, { "key" : "BIB13", "author" : "Gibson", "volume" : "5", "first-page" : "24", "year" : "1994", "journal-title" : "New Solutions", "DOI" : "10.2190/NS5.1.g", "doi-asserted-by" : "crossref" }, { "key" : "BIB14", "author" : "Goldenhar", "volume" : "29", "first-page" : "289", "year" : "1996", "journal-title" : "Am J Ind Med", "DOI" : "10.1002/(SICI)1097-0274(199604)29:4<289::AID-AJIM2>3.0.CO;2-K", "doi-asserted-by" : "crossref" }, { "key" : "BIB15", "author" : "Haun", "year" : "1984", "unstructured" : "1984. Inhalation studies of UDMH. Air Force Aerospace Medical Res Lab, TR-85-020." }, { "key" : "BIB16", "author" : "International Agency for Research on Cancer (IARC)", "year" : "1997", "unstructured" : "International Agency for Research on Cancer (IARC). 1997. Evaluation of carcinogen risks to humans: man-made mineral fibres and radon. Lyons, France." }, { "key" : "BIB17", "author" : "Lord", "year" : "1969", "unstructured" : "1969 (May-June). Thoughts on the apple harvest problem. Fruit Notes. U. S. Department of Agriculture, Massachusetts Extension Service." }, { "key" : "BIB18", "author" : "Manning", "first-page" : "34", "year" : "1989", "unstructured" : "Sales Agent for J. P. Sullivan and Co., of Ayer, MA, an apple commission house. In 1989. The post-Alar era dawns chilly for apple growers. Boston Globe Oct. 25 p. 34.", "volume-title" : "The post-Alar era dawns chilly for apple growers" }, { "key" : "BIB19", "author" : "National Cancer Institute", "year" : "1978", "unstructured" : "National Cancer Institute. 1978. Bioassay of daminozide for possible carcinogenicity. Washington, D.C., United State Department of Health, Education and Welfare, Public Health Service (NIC Carcinogenesis Technical Report Series No. 83; DHEW Publication No (NIH 78-1333)." }, { "key" : "BIB20", "author" : "Rogers", "volume" : "89", "first-page" : "321", "year" : "1981", "journal-title" : "Mutat Res", "DOI" : "10.1016/0165-1218(81)90113-0", "doi-asserted-by" : "crossref" }, { "key" : "BIB21", "author" : "Rosenberg", "year" : "1995", "unstructured" : "1995. The best laid bans: the impact of pesticide bans on workers. Doctoral thesis, Department of Work Environment, University of Massachusetts Lowell." }, { "key" : "BIB22", "author" : "Rosenberg", "volume" : "6", "first-page" : "34", "year" : "1996", "journal-title" : "New Solutions: A Journal of Environmental and Occupational Health Policy", "DOI" : "10.2190/NS6.2.d", "doi-asserted-by" : "crossref" }, { "key" : "BIB23", "author" : "Rosenberg", "volume" : "8", "first-page" : "365", "year" : "1998", "journal-title" : "New Solutions Environmental Health Policy", "DOI" : "10.2190/A2A1-CT1X-RY6D-RR3M", "doi-asserted-by" : "crossref" }, { "key" : "BIB24", "author" : "Saunders", "volume" : "29", "first-page" : "409", "year" : "1987", "journal-title" : "J Occup Environ Med" }, { "key" : "BIB25", "author" : "Toth", "volume" : "50", "first-page" : "181", "year" : "1973", "journal-title" : "J Natl Cancer Inst", "DOI" : "10.1093/jnci/50.1.181", "doi-asserted-by" : "crossref" }, { "key" : "BIB26", "author" : "Toth", "volume" : "40", "first-page" : "2427", "year" : "1977a", "journal-title" : "Cancer", "DOI" : "10.1002/1097-0142(197711)40:5+<2427::AID-CNCR2820400906>3.0.CO;2-Y", "doi-asserted-by" : "crossref" }, { "key" : "BIB27", "author" : "Toth", "volume" : "37", "first-page" : "3497", "year" : "1977b", "journal-title" : "Cancer Res" }, { "key" : "BIB28", "author" : "U.S. Environmental Protection Agency", "year" : "1986", "unstructured" : "U.S. Environmental Protection Agency. 1986. Integrated Risk Information System (IRIS). Oxamyl. December 9." }, { "key" : "BIB29", "author" : "U.S. Environmental Protection Agency", "year" : "1986", "unstructured" : "U.S. Environmental Protection Agency. 1986. Chemical Fact Sheet Number 26: Daminozide. Office of Pesticides and Toxic Substances, Washington, DC. 10-169." }, { "key" : "BIB30", "author" : "U.S. Environmental Protection Agency", "year" : "1989", "unstructured" : "U.S. Environmental Protection Agency, Office of Pesticide Programs, Office of Pesticides and Toxic Substances. 1989. Daminozide special review technical support document: Preliminary determination to cancel the food uses of Daminozide. Washington, DC: May." }, { "key" : "BIB31", "author" : "U.S. Environmental Protection Agency", "volume" : "54", "first-page" : "10", "year" : "1989", "journal-title" : "Fed Regist." }, { "key" : "BIB32", "author" : "U.S. Environmental Protection Agency", "year" : "1990", "unstructured" : "U.S. Environmental Protection Agency. 1990. Integrated Risk Information System (IRIS). Propargite. May 1." }, { "key" : "BIB33", "author" : "U.S. Environmental Protection Agency", "volume" : "57", "first-page" : "10", "year" : "1992", "journal-title" : "Fed. Regist." }, { "key" : "BIB34", "author" : "U.S. Environmental Protection Agency", "year" : "1993", "unstructured" : "U.S. Environmental Protection Agency, Office of Prevention, Pesticides and Toxic Substances. 1993. R.E.D. Facts, Document number EPA-738-F-93-007. September." }, { "key" : "BIB35", "author" : "U.S. Department of Agriculture", "year" : "1993", "journal-title" : "New England Agricultural Statistics" }, { "key" : "BIB36", "author" : "Warren", "year" : "1992", "unstructured" : "1992. Unanticipated consequences of banning a chemical: the case of Alar. Unpublished manuscript, Department of Work Environment, University of Massachusetts Lowell." }, { "key" : "BIB37", "author" : "Wood", "year" : "1990", "unstructured" : "1990. Memo to Poverty Lane, West Lebanon, New Hampshire, to members of the Risk Assessment/Risk Management Work Group, Keystone National Policy Dialogue on Food Safety, Oct. 26, 1990, cited in Rosenberg, B. 1996." } ], "container-title" : [ "American Journal of Industrial Medicine" ], "link" : [ { "URL" : "https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1002%2F1097-0274(200102)39:2%3C218::AID-AJIM1009%3E3.0.CO;2-4", "content-type" : "unspecified", "content-version" : "vor", "intended-application" : "text-mining" } ], "deposited" : { "date-parts" : [ [ 2017, 8, 4 ] ], "date-time" : "2017-08-04T20:22:16Z", "timestamp" : { "$numberLong" : "1501878136000" } }, "score" : 1, "issued" : { "date-parts" : [ [ 2001 ] ] }, "references-count" : 37, "URL" : "http://dx.doi.org/10.1002/1097-0274(200102)39:2<218::aid-ajim1009>3.0.co;2-4", "relation" : { "cites" : [] }, "ISSN" : [ "0271-3586", "1097-0274" ], "issn-type" : [ { "value" : "0271-3586", "type" : "print" }, { "value" : "1097-0274", "type" : "electronic" } ], "subject" : [ "Public Health, Environmental and Occupational Health" ] } diff --git a/tests/fixtures.py b/tests/fixtures.py deleted file mode 100644 index d3d8c24b..00000000 --- a/tests/fixtures.py +++ /dev/null @@ -1,169 +0,0 @@ - -import os -import time -import json -import signal -import pytest -import fatcat -import fatcat.sql -from fatcat.models import * - - -@pytest.fixture -def full_app(): - fatcat.app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite://' - fatcat.app.testing = True - fatcat.app.debug = False - fatcat.db.session.remove() - fatcat.db.drop_all() - fatcat.db.create_all() - fatcat.sql.populate_db() - return fatcat.app - -@pytest.fixture -def app(full_app): - return full_app.test_client() - -@pytest.fixture -def rich_app(app): - enrichen_test_app(app) - return app - - -@pytest.fixture(scope="function") -def api_client(full_app): - - pid = os.fork() - if pid == 0: - full_app.testing = False - full_app.run(host="localhost", port=8444, debug=False) - os._exit(0) - - time.sleep(0.2) - yield fatcat.api_client.FatCatApiClient("http://localhost:8444") - os.kill(pid, signal.SIGKILL) - - -## Helpers ################################################################## - -def enrichen_test_app(app): - - rv = app.post('/v0/editgroup', - data=json.dumps(dict( - extra=dict(q=1, u="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - editgroup_id = obj['id'] - - rv = app.post('/v0/container', - data=json.dumps(dict( - name="schmournal", - publisher="society of authors", - issn="2222-3333", - editgroup=editgroup_id, - extra=dict(a=2, i="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - container_id = obj['id'] - - rv = app.post('/v0/creator', - data=json.dumps(dict( - name="anon y. mouse", - orcid="0000-0002-1825-0097", - editgroup=editgroup_id, - extra=dict(w=1, q="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - creator_id = obj['id'] - - rv = app.post('/v0/work', - data=json.dumps(dict( - title="dummy work", - work_type="book", - editgroup=editgroup_id, - extra=dict(a=3, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - work_id = obj['id'] - - # this stub work will be referenced - rv = app.post('/v0/release', - data=json.dumps(dict( - title="derivative work", - work_type="journal-article", - work=work_id, - creators=[creator_id], - doi="10.1234/58", - editgroup=editgroup_id, - refs=[ - dict(stub="some other journal article"), - ], - extra=dict(f=7, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - stub_release_id = obj['id'] - - rv = app.post('/v0/release', - data=json.dumps(dict( - title="dummy work", - work_type="book", - work=work_id, - container=container_id, - creators=[creator_id], - doi="10.1234/5678", - editgroup=editgroup_id, - refs=[ - dict(stub="some book", target=stub_release_id), - ], - extra=dict(f=7, b="loopy"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - release_id = obj['id'] - - rv = app.post('/v0/file', - data=json.dumps(dict( - sha1="deadbeefdeadbeef", - size=1234, - releases=[release_id], - editgroup=editgroup_id, - extra=dict(f=4, b="zing"))), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - obj = json.loads(rv.data.decode('utf-8')) - file_id = obj['id'] - - rv = app.post('/v0/editgroup/{}/accept'.format(editgroup_id), - headers={"content-type": "application/json"}) - assert rv.status_code == 200 - -def check_entity_fields(e): - for key in ('rev', 'is_live', 'redirect_id'): - assert key in e - for key in ('id',): - assert e[key] is not None - -def check_release(e): - for key in ('work', 'release_type'): - assert key in e - for key in ('title', ): - assert e[key] is not None - for key in ('refs', 'creators'): - assert type(e[key]) == list - -def check_creator(e): - for key in ('name',): - assert e[key] is not None - -def check_container(e): - for key in ('name',): - assert e[key] is not None - -def check_file(e): - for key in ('size', 'sha1'): - assert e[key] is not None diff --git a/tests/models.py b/tests/models.py deleted file mode 100644 index 98bb6bc7..00000000 --- a/tests/models.py +++ /dev/null @@ -1,87 +0,0 @@ - -import json -import unittest -import tempfile -import pytest -import fatcat -import fatcat.sql -from fatcat.models import * -from fixtures import * - - -def test_example_works(app): - fatcat.dummy.insert_example_works() - -def test_random_works(app): - fatcat.dummy.insert_random_works() - -def test_load_crossref(app): - with open('./tests/files/crossref-works.2018-01-21.badsample.json', 'r') as f: - raw = [json.loads(l) for l in f.readlines() if len(l) > 3] - for obj in raw: - fatcat.sql.add_crossref_via_model(obj) - -def test_schema_release_rev(app): - assert ReleaseRev.query.count() == 0 - e = { - "title": "Bogus title", - "release_type": "book", - "creators": [], - "refs": [], - } - model = release_rev_schema.load(e) - fatcat.db.session.add(model.data) - fatcat.db.session.commit() - assert ReleaseRev.query.count() == 1 - model_after = ReleaseRev.query.first() - serial = release_rev_schema.dump(model_after).data - #check_release(serial) - for k in e: - assert e[k] == serial[k] - -def test_schema_creator_rev(app): - assert ReleaseRev.query.count() == 0 - e = { - "name": "Robin (Batman)", - } - model = creator_rev_schema.load(e) - fatcat.db.session.add(model.data) - fatcat.db.session.commit() - assert CreatorRev.query.count() == 1 - model_after = CreatorRev.query.first() - serial = creator_rev_schema.dump(model_after).data - check_creator(serial) - for k in e.keys(): - assert e[k] == serial[k] - -def test_schema_container_rev(app): - assert ReleaseRev.query.count() == 0 - e = { - "name": "Papers Monthly", - } - model = container_rev_schema.load(e) - fatcat.db.session.add(model.data) - fatcat.db.session.commit() - assert ContainerRev.query.count() == 1 - model_after = ContainerRev.query.first() - serial = container_rev_schema.dump(model_after).data - check_container(serial) - for k in e.keys(): - assert e[k] == serial[k] - -def test_schema_file_rev(app): - assert ReleaseRev.query.count() == 0 - e = { - "sha1": "asdf", - "size": 6, - } - model = file_rev_schema.load(e) - print(model) - fatcat.db.session.add(model.data) - fatcat.db.session.commit() - assert FileRev.query.count() == 1 - model_after = FileRev.query.first() - serial = file_rev_schema.dump(model_after).data - check_file(serial) - for k in e.keys(): - assert e[k] == serial[k] diff --git a/tests/routes.py b/tests/routes.py deleted file mode 100644 index 79d97fe4..00000000 --- a/tests/routes.py +++ /dev/null @@ -1,67 +0,0 @@ - -import json -import tempfile -import pytest -import fatcat -import fatcat.sql -from fatcat.models import * -from fixtures import * - - -def test_static_routes(rich_app): - app = rich_app - - for route in ('/health', '/robots.txt', '/', '/about'): - rv = app.get(route) - assert rv.status_code == 200 - - assert app.get("/static/bogus/route").status_code == 404 - - -def test_all_views(rich_app): - app = rich_app - - for route in ('work', 'release', 'creator', 'container', 'file'): - print(route) - rv = app.get('/{}/1'.format(route)) - assert rv.status_code == 200 - - rv = app.get('/{}/999999999999'.format(route)) - assert rv.status_code == 404 - - rv = app.get('/work/random') - rv = app.get(rv.location) - assert rv.status_code == 200 - - rv = app.get('/work/random') - assert rv.status_code == 302 - - rv = app.get('/work/create') - assert rv.status_code == 200 - - rv = app.get('/release/random') - assert rv.status_code == 302 - - rv = app.get('/release/1/changelog') - assert rv.status_code == 200 - - rv = app.get('/editgroup/1') - assert rv.status_code == 200 - - rv = app.get('/editgroup/99999999') - assert rv.status_code == 404 - - rv = app.get('/editgroup/current') - assert rv.status_code == 302 - - rv = app.get('/editor/admin') - assert rv.status_code == 200 - - rv = app.get('/editor/bizzaro') - assert rv.status_code == 404 - - rv = app.get('/editor/admin/changelog') - assert rv.status_code == 200 - - rv = app.get('/editor/bizarro/changelog') - assert rv.status_code == 404 diff --git a/tests/test_fixtures.py b/tests/test_fixtures.py deleted file mode 100644 index 0a0d3176..00000000 --- a/tests/test_fixtures.py +++ /dev/null @@ -1,29 +0,0 @@ - -import pytest -import fatcat.api_client -from fixtures import * - - -def test_rich_app_fixture(rich_app): - app = rich_app - - assert ChangelogEntry.query.count() == 1 - - for cls in (WorkIdent, WorkRev, WorkEdit, - ContainerIdent, ContainerRev, ContainerEdit, - CreatorIdent, CreatorRev, CreatorEdit, - FileIdent, FileRev, FileEdit): - assert cls.query.count() == 1 - for cls in (ReleaseIdent, ReleaseRev, ReleaseEdit): - assert cls.query.count() == 2 - - for cls in (WorkIdent, - ContainerIdent, - CreatorIdent, - FileIdent): - assert cls.query.filter(cls.is_live==True).count() == 1 - assert ReleaseIdent.query.filter(ReleaseIdent.is_live==True).count() == 2 - - # test that editor's active edit group is now invalid - editor = Editor.query.first() - assert editor.active_editgroup == None |