示例#1
0
def test_grants(app, db, minimal_oai_record, recid_pid):
    """"Test grants."""
    minimal_oai_record['grants'] = [
        {
            'acronym': 'WorkAble',
            'title': 'Making Capabilities/Design Work',
            'identifiers': {
                'eurepo': 'info:eu-repo/grantAgreement/EC/FP7/244909/'
            },
        }
    ]

    minimal_oai_record.update({'resource_type': {'type': 'dataset'}})
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['linksToProjects'] == [
        'info:eu-repo/grantAgreement/EC/FP7/244909/'
        '/Making Capabilities%2FDesign Work/WorkAble'
    ]

    minimal_oai_record['grants'][0]['title'] = u'Üniçoδé Grànt Title'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['linksToProjects'] == [
        'info:eu-repo/grantAgreement/EC/FP7/244909/'
        u'/Üniçoδé Grànt Title/WorkAble'
    ]
def test_grants(app, db, minimal_oai_record, recid_pid):
    """"Test grants."""
    minimal_oai_record['grants'] = [
        {
            'acronym': 'WorkAble',
            'title': 'Making Capabilities/Design Work',
            'identifiers': {
                'eurepo': 'info:eu-repo/grantAgreement/EC/FP7/244909/'
            },
        }
    ]

    minimal_oai_record.update({'resource_type': {'type': 'dataset'}})
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['linksToProjects'] == [
        'info:eu-repo/grantAgreement/EC/FP7/244909/'
        '/Making Capabilities%2FDesign Work/WorkAble'
    ]

    minimal_oai_record['grants'][0]['title'] = u'Üniçoδé Grànt Title'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['linksToProjects'] == [
        'info:eu-repo/grantAgreement/EC/FP7/244909/'
        u'/Üniçoδé Grànt Title/WorkAble'
    ]
def test_pids(app, db, minimal_oai_record, recid_pid):
    """"Test PIDs."""
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['pids'] == \
        [{'value': 'oai:zenodo.org:123', 'type': 'oai'}]

    minimal_oai_record['doi'] = '10.1234/foo'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['pids'] == \
        [{'value': 'oai:zenodo.org:123', 'type': 'oai'},
         {'value': '10.1234/foo', 'type': 'doi'}]
示例#4
0
def test_pids(app, db, minimal_oai_record, recid_pid):
    """"Test PIDs."""
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['pids'] == \
        [{'value': 'oai:zenodo.org:123', 'type': 'oai'}]

    minimal_oai_record['doi'] = '10.1234/foo'
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['pids'] == \
        [{'value': 'oai:zenodo.org:123', 'type': 'oai'},
         {'value': '10.1234/foo', 'type': 'doi'}]
def test_publisher(app, db, minimal_oai_record, recid_pid):
    """Test publisher."""
    minimal_oai_record['doi'] = '10.5281/12345'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['publisher'] == 'Zenodo'

    minimal_oai_record['part_of'] = {'publisher': 'The Good Publisher'}
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['publisher'] == 'The Good Publisher'

    minimal_oai_record['imprint'] = {'publisher': 'The Bad Publisher'}
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['publisher'] == 'The Bad Publisher'
示例#6
0
def test_publisher(app, db, minimal_oai_record, recid_pid):
    """Test publisher."""
    minimal_oai_record['doi'] = '10.5281/12345'
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['publisher'] == 'Zenodo'

    minimal_oai_record['part_of'] = {'publisher': 'The Good Publisher'}
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['publisher'] == 'The Good Publisher'

    minimal_oai_record['imprint'] = {'publisher': 'The Bad Publisher'}
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['publisher'] == 'The Bad Publisher'
示例#7
0
def test_minimal(app, db, minimal_oai_record, recid_pid):
    """Test minimal record."""
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj == {
        'originalId':
        'oai:zenodo.org:123',
        'type':
        'publication',
        'resourceType':
        '0001',
        'title':
        'Test',
        'licenseCode':
        'OPEN',
        'url':
        'https://zenodo.org/record/123',
        'authors': ['Test'],
        'description':
        'My description',
        'pids': [{
            'type': 'oai',
            'value': 'oai:zenodo.org:123'
        }, {
            'type': 'doi',
            'value': '10.5072/zenodo.123'
        }],
        'hostedById':
        'opendoar____::2659',
        'collectedFromId':
        'opendoar____::2659',
    }
def test_license_code(app, db, minimal_oai_record, recid_pid):
    """Test license code."""
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['licenseCode'] == 'OPEN'

    minimal_oai_record['access_right'] = 'restricted'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['licenseCode'] == 'RESTRICTED'

    minimal_oai_record['access_right'] = 'embargoed'
    minimal_oai_record['embargo_date'] = '2017-04-22'
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['licenseCode'] == 'EMBARGO'
    assert obj['embargoEndDate'] == '2017-04-22'
示例#9
0
def test_license_code(app, db, minimal_oai_record, recid_pid):
    """Test license code."""
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['licenseCode'] == 'OPEN'

    minimal_oai_record['access_right'] = 'restricted'
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['licenseCode'] == 'RESTRICTED'

    minimal_oai_record['access_right'] = 'embargoed'
    minimal_oai_record['embargo_date'] = '2017-04-22'
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['licenseCode'] == 'EMBARGO'
    assert obj['embargoEndDate'] == '2017-04-22'
def test_resource_types(app, db, minimal_oai_record, recid_pid):
    """"Test resource types."""
    minimal_oai_record['doi'] = '10.1234/foo'

    minimal_oai_record.update({'resource_type': {'type': 'dataset'}})
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    # Datasets use the DOI
    assert obj['originalId'] == '10.1234/foo'
    assert obj['collectedFromId'] == 're3data_____::r3d100010468'
    assert obj['hostedById'] == 're3data_____::r3d100010468'
    assert obj['resourceType'] == '0021'
    assert obj['type'] == 'dataset'

    minimal_oai_record.update({'resource_type': {'type': 'poster'}})
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj['originalId'] == 'oai:zenodo.org:123'
    assert obj['collectedFromId'] == 'opendoar____::2659'
    assert obj['hostedById'] == 'opendoar____::2659'
    assert obj['resourceType'] == '0004'
    assert obj['type'] == 'publication'
示例#11
0
def test_resource_types(app, db, minimal_oai_record, recid_pid):
    """"Test resource types."""
    minimal_oai_record['doi'] = '10.1234/foo'

    minimal_oai_record.update({'resource_type': {'type': 'dataset'}})
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    # Datasets use the DOI
    assert obj['originalId'] == '10.1234/foo'
    assert obj['collectedFromId'] == 're3data_____::r3d100010468'
    assert obj['hostedById'] == 're3data_____::r3d100010468'
    assert obj['resourceType'] == '0021'
    assert obj['type'] == 'dataset'

    minimal_oai_record.update({'resource_type': {'type': 'poster'}})
    obj = openaire_json_v1.transform_record(recid_pid,
                                            Record(minimal_oai_record))
    assert obj['originalId'] == 'oai:zenodo.org:123'
    assert obj['collectedFromId'] == 'opendoar____::2659'
    assert obj['hostedById'] == 'opendoar____::2659'
    assert obj['resourceType'] == '0004'
    assert obj['type'] == 'publication'
def test_minimal(app, db, minimal_oai_record, recid_pid):
    """Test minimal record."""
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(minimal_oai_record))
    assert obj == {
        'originalId': 'oai:zenodo.org:123',
        'type': 'publication',
        'resourceType': '0001',
        'title': 'Test',
        'licenseCode': 'OPEN',
        'url': 'https://zenodo.org/record/123',
        'authors': ['Test'],
        'description': 'My description',
        'pids': [{'type': 'oai', 'value': 'oai:zenodo.org:123'}],
        'hostedById': 'opendoar____::2659',
        'collectedFromId': 'opendoar____::2659',
    }
示例#13
0
def test_full(app, db, full_oai_record, recid_pid):
    """Test minimal record."""
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(full_oai_record))
    assert obj == {
        'authors': ['Doe, John', 'Doe, Jane', 'Smith, John', 'Nowak, Jack'],
        'collectedFromId': 'opendoar____::2659',
        'description': 'Test Description',
        'hostedById': 'opendoar____::2659',
        'language': 'eng',
        'licenseCode': 'OPEN',
        'originalId': 'oai:zenodo.org:12345',
        'pids': [{'type': 'oai', 'value': 'oai:zenodo.org:12345'},
                 {'type': 'doi', 'value': '10.1234/foo.bar'}],
        'publisher': 'Jol',
        'resourceType': '0001',
        'title': 'Test title',
        'type': 'publication',
        'url': 'https://zenodo.org/record/12345',
        'version': '1.2.5'
    }
示例#14
0
def test_full(app, db, full_oai_record, recid_pid):
    """Test minimal record."""
    obj = openaire_json_v1.transform_record(
        recid_pid, Record(full_oai_record))
    assert obj == {
        'authors': ['Doe, John', 'Doe, Jane', 'Smith, John', 'Nowak, Jack'],
        'collectedFromId': 'opendoar____::2659',
        'description': 'Test Description',
        'hostedById': 'opendoar____::2659',
        'language': 'eng',
        'licenseCode': 'OPEN',
        'originalId': 'oai:zenodo.org:12345',
        'pids': [{'type': 'oai', 'value': 'oai:zenodo.org:12345'},
                 {'type': 'doi', 'value': '10.1234/foo.bar'}],
        'publisher': 'Jol',
        'resourceType': '0001',
        'title': 'Test title',
        'type': 'publication',
        'url': 'https://zenodo.org/record/12345',
        'contexts': ['https://zenodo.org/communities/zenodo'],
        'version': '1.2.5'
    }