• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python dc_v1.transform_record函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中zenodo.modules.records.serializers.dc_v1.transform_record函数的典型用法代码示例。如果您正苦于以下问题:Python transform_record函数的具体用法?Python transform_record怎么用?Python transform_record使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了transform_record函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_types

def test_types(app, db, minimal_record_model, recid_pid):
    """"Test contributors."""
    minimal_record_model.update({
        'resource_type': {'type': 'publication', 'subtype': 'conferencepaper'}
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['types'] == [
        'info:eu-repo/semantics/conferencePaper',
        'publication-conferencepaper'
    ]

    # If the record is not in 'c1', OpenAIRE subtype should not be serialized
    minimal_record_model.update({
        'resource_type': {'type': 'software',
                          'openaire_subtype': 'foo:t1'}
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['types'] == [
        'info:eu-repo/semantics/other',
        'software'
    ]

    # Add 'c1' to communities. 'foo:t1' should be serialized as a type
    minimal_record_model.update({'communities': ['c1']})
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['types'] == [
        'info:eu-repo/semantics/other',
        'software',
        'openaire:foo:t1',
    ]
开发者ID:zenodo,项目名称:zenodo,代码行数:30,代码来源:test_schemas_dc.py


示例2: test_identifiers

def test_identifiers(app, db, minimal_record_model, recid_pid):
    """"Test identifiers."""
    minimal_record_model['doi'] = '10.1234/foo'
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['identifiers'] == \
        ['https://zenodo.org/record/123', '10.1234/foo']

    minimal_record_model['_oai'] = {'id': 'oai:zenodo.org:123'}
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert 'oai:zenodo.org:123' in obj['identifiers']
开发者ID:zenodo,项目名称:zenodo,代码行数:10,代码来源:test_schemas_dc.py


示例3: test_identifiers

def test_identifiers(minimal_record, recid_pid):
    """"Test identifiers."""
    minimal_record['doi'] = '10.1234/foo'
    obj = dc_v1.transform_record(recid_pid, Record(minimal_record))
    assert obj['identifiers'] == \
        ['10.1234/foo', 'https://zenodo.org/record/123']

    minimal_record['_oai'] = {'id': 'oai:zenodo.org:123'}
    obj = dc_v1.transform_record(recid_pid, Record(minimal_record))
    assert 'oai:zenodo.org:123' in obj['identifiers']
开发者ID:SamiHiltunen,项目名称:zenodo,代码行数:10,代码来源:test_schemas_dc.py


示例4: test_description

def test_description(app, db, minimal_record_model, recid_pid):
    """Test description."""
    minimal_record_model['description'] = \
        "<p><b>Foo&nbsp;Bar</b></p><em><p>&nbsp;Foo&amp;Bar</p></em> &apos;" \
        "This&apos;&nbsp;is&nbsp;<i>&lt;it&gt;<i>"
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['descriptions'] == ["Foo Bar Foo&Bar 'This' is <it>"]

    minimal_record_model['description'] = ''
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['descriptions'] == []
开发者ID:zenodo,项目名称:zenodo,代码行数:11,代码来源:test_schemas_dc.py


示例5: test_publishers

def test_publishers(app, db, minimal_record_model, recid_pid):
    """Test publishers."""
    minimal_record_model.update({
        'part_of': {'publisher': 'Zenodo'},
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['publishers'] == ['Zenodo']
    minimal_record_model.update({
        'imprint': {'publisher': 'Invenio'},
        'part_of': {'publisher': 'Zenodo'},
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['publishers'] == ['Invenio']
开发者ID:zenodo,项目名称:zenodo,代码行数:13,代码来源:test_schemas_dc.py


示例6: test_contributors

def test_contributors(app, db, minimal_record_model, recid_pid):
    """"Test contributors."""
    minimal_record_model.update({
        'contributors': [{'name': 'Smith, John'}]
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['contributors'] == ['Smith, John']
开发者ID:zenodo,项目名称:zenodo,代码行数:7,代码来源:test_schemas_dc.py


示例7: test_rights

def test_rights(app, db, minimal_record_model, recid_pid):
    """Test rights."""
    minimal_record_model.update({
        'license': {'url': 'http://creativecommons.org/licenses/by/4.0/'}
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert 'http://creativecommons.org/licenses/by/4.0/' in obj['rights']
开发者ID:zenodo,项目名称:zenodo,代码行数:7,代码来源:test_schemas_dc.py


示例8: test_types

def test_types(app, db, minimal_record_model, recid_pid):
    """"Test contributors."""
    minimal_record_model.update({
        'resource_type': {'type': 'publication', 'subtype': 'conferencepaper'}
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['types'] == ['info:eu-repo/semantics/conferencePaper']
开发者ID:lnielsen,项目名称:zenodo,代码行数:7,代码来源:test_schemas_dc.py


示例9: test_contributors

def test_contributors(minimal_record, recid_pid):
    """"Test contributors."""
    minimal_record.update({
        'contributors': [{'name': 'Smith, John'}]
    })
    obj = dc_v1.transform_record(recid_pid, Record(minimal_record))
    assert obj['contributors'] == ['Smith, John']
开发者ID:SamiHiltunen,项目名称:zenodo,代码行数:7,代码来源:test_schemas_dc.py


示例10: test_community_relations

def test_community_relations(db, minimal_record_model, recid_pid):
    """Test communities."""
    for communities in (['zenodo'], ['c1', 'c2', 'c3']):
        minimal_record_model['communities'] = communities
        obj = dc_v1.transform_record(recid_pid, minimal_record_model)
        for comm in communities:
            assert ('url:http://localhost/communities/{}'.format(comm)
                    in obj['relations'])
开发者ID:zenodo,项目名称:zenodo,代码行数:8,代码来源:test_schemas_dc.py


示例11: test_embargo_date

def test_embargo_date(app, db, minimal_record_model, recid_pid):
    """"Test embargo date."""
    dt = (datetime.utcnow().date() + timedelta(days=1)).isoformat()
    minimal_record_model.update({
        'embargo_date': dt,
        'access_right': 'embargoed',
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['rights'] == ['info:eu-repo/semantics/embargoedAccess']
    assert 'info:eu-repo/date/embargoEnd/{0}'.format(dt) in obj['dates']
开发者ID:zenodo,项目名称:zenodo,代码行数:10,代码来源:test_schemas_dc.py


示例12: test_sources

def test_sources(app, db, minimal_record_model, recid_pid):
    """Test contributors."""
    minimal_record_model.update({
        'journal': {
            'title': 'CAP',
            'volume': '22',
            'issue': '1',
            'pages': '1-2',
            'year': '2002'
        }})
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['sources'] == ['CAP 22(1) 1-2 (2002)']

    minimal_record_model.update({
        'journal': {
            'title': 'CAP',
            'issue': '1',
        }})
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['sources'] == ['CAP 1']
开发者ID:zenodo,项目名称:zenodo,代码行数:20,代码来源:test_schemas_dc.py


示例13: test_dates

def test_dates(app, db, full_record, minimal_record_model, recid_pid):
    """Test dates."""
    minimal_record_model['dates'] = full_record['dates']
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['dates'] == [
        datetime.utcnow().date().isoformat(),
        '2019-01-01/',
        '/2019-01-01',
        '2019-01-01',
        '2019-01-01/2019-02-01',
    ]
开发者ID:zenodo,项目名称:zenodo,代码行数:11,代码来源:test_schemas_dc.py


示例14: test_sources_meetings

def test_sources_meetings(app, db, minimal_record_model, recid_pid):
    """"Test contributors."""
    minimal_record_model['meetings'] = {
        'acronym': 'CAP',
        'title': 'Communicating',
        'place': 'Cape Town',
        'dates': 'March, 2010',
        'session': 'I',
        'session_part': '1',
    }
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['sources'] == ['CAP, Communicating, Cape Town, March, 2010']
开发者ID:zenodo,项目名称:zenodo,代码行数:12,代码来源:test_schemas_dc.py


示例15: test_minimal

def test_minimal(app, db, minimal_record_model, recid_pid):
    """Test identifiers."""
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj == {
        'sources': [],
        'contributors': [],
        'identifiers': ['', 'https://zenodo.org/record/123'],
        'subjects': [],
        'languages': [''],
        'dates': [datetime.utcnow().date().isoformat()],
        'titles': ['Test'],
        'creators': ['Test'],
        'rights': ['info:eu-repo/semantics/openAccess'],
        'publishers': [],
        'descriptions': ['My description'],
        'types': ['info:eu-repo/semantics/other'],
        'relations': []
    }
开发者ID:lnielsen,项目名称:zenodo,代码行数:18,代码来源:test_schemas_dc.py


示例16: test_relations

def test_relations(app, db, minimal_record_model, recid_pid):
    """"Test relations."""
    minimal_record_model.update({
        'grants': [{
            'identifiers': {
                'eurepo': 'info:eu-repo/grantAgreement/EC/FP7/244909'}}],
        'alternate_identifiers': [{
            'identifier': '10.1234/foo.bar',
            'scheme': 'doi'
        }],
        'related_identifiers': [{
            'identifier': '1234',
            'scheme': 'pmid',
            'relation': 'isCited',
        }],
    })
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['relations'] == [
        'info:eu-repo/grantAgreement/EC/FP7/244909',
        'info:eu-repo/semantics/altIdentifier/doi/10.1234/foo.bar',
        'pmid:1234'
    ]
开发者ID:zenodo,项目名称:zenodo,代码行数:22,代码来源:test_schemas_dc.py


示例17: test_languages

def test_languages(app, db, minimal_record_model, recid_pid):
    """"Test identifiers."""
    minimal_record_model['language'] = 'eng'
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['languages'] == ['eng', ]
开发者ID:zenodo,项目名称:zenodo,代码行数:5,代码来源:test_schemas_dc.py


示例18: test_creators

def test_creators(app, db, minimal_record_model, recid_pid):
    """"Test identifiers."""
    minimal_record_model['creators'] = []
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert obj['creators'] == []
开发者ID:zenodo,项目名称:zenodo,代码行数:5,代码来源:test_schemas_dc.py


示例19: test_creators

def test_creators(minimal_record, recid_pid):
    """"Test identifiers."""
    minimal_record['creators'] = []
    obj = dc_v1.transform_record(recid_pid, Record(minimal_record))
    assert obj['creators'] == []
开发者ID:SamiHiltunen,项目名称:zenodo,代码行数:5,代码来源:test_schemas_dc.py


示例20: test_locations

def test_locations(app, db, minimal_record_model, recid_pid):
    """Test locations."""
    minimal_record_model['locations'] = [
        {"lat": 2.35, "lon": 1.534, "place": "my place"}]
    obj = dc_v1.transform_record(recid_pid, minimal_record_model)
    assert set(obj['coverage']) == {'name=my place; east=1.534; north=2.35'}
开发者ID:zenodo,项目名称:zenodo,代码行数:6,代码来源:test_schemas_dc.py



注:本文中的zenodo.modules.records.serializers.dc_v1.transform_record函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python jsonformat.from_dict函数代码示例发布时间:2022-05-26
下一篇:
Python higtextviewers.HIGTextView类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap