Skip to content

Commit

Permalink
tests: add tests for 695 and 653 fields
Browse files Browse the repository at this point in the history
Signed-off-by: Spiros Delviniotis <spyridon.delviniotis@cern.ch>
  • Loading branch information
spirosdelviniotis committed Feb 2, 2017
1 parent 8d3fb5c commit 0eaf664
Showing 1 changed file with 130 additions and 0 deletions.
130 changes: 130 additions & 0 deletions tests/unit/dojson/test_dojson_hep.py
Expand Up @@ -2203,3 +2203,133 @@ def test_report_numbers_from_two_037__a():

assert expected == result['037']


def test_keywords_from_695__a_2():
schema = load_schema('hep')
subschema = schema['properties']['keywords']

snippet = (
'<datafield tag="695" ind1=" " ind2=" ">'
' <subfield code="a">REVIEW</subfield>'
' <subfield code="2">INSPIRE</subfield>'
'</datafield>'
) # record/200123

expected = [
{
'keyword': 'REVIEW',
'classification_scheme': 'INSPIRE',
},
]
result = hep.do(create_record(snippet))

assert validate(result['keywords'], subschema) is None
assert expected == result['keywords']

expected = [
{
'a': 'REVIEW',
'2': 'INSPIRE',
},
]
result = hep2marc.do(result)

assert expected == result['695']


def test_energy_ranges_from_695__2_e():
schema = load_schema('hep')
subschema = schema['properties']['energy_ranges']

snippet = (
'<datafield tag="695" ind1=" " ind2=" ">'
' <subfield code="2">INSPIRE</subfield>'
' <subfield code="e">7</subfield>'
'</datafield>'
) # record/1124337

expected = [7]
result = hep.do(create_record(snippet))

assert validate(result['energy_ranges'], subschema) is None
assert expected == result['energy_ranges']

expected = [
{
'2': 'INSPIRE',
'e': 7,
},
]
result = hep2marc.do(result)

assert expected == result['695']


def test_keywords_from_multiple_695__a_2():
schema = load_schema('hep')
subschema = schema['properties']['keywords']

snippet = (
'<datafield tag="695" ind1=" " ind2=" ">'
' <subfield code="a">programming: Monte Carlo</subfield>'
' <subfield code="2">INSPIRE</subfield>'
'</datafield>'
'<datafield tag="695" ind1=" " ind2=" ">'
' <subfield code="a">electron positron: annihilation</subfield>'
' <subfield code="2">INSPIRE</subfield>'
'</datafield>'
) # record/363605

expected = [
{
'keyword': 'programming: Monte Carlo',
'classification_scheme': 'INSPIRE',
},
]
result = hep.do(create_record(snippet))

assert validate(result['keywords'], subschema) is None
assert expected == result['keywords']

expected = [
{
'a': 'programming: Monte Carlo',
'2': 'INSPIRE',
},
]
result = hep2marc.do(result)

assert expected == result['695']


def test_keywords_from_653__a_9():
schema = load_schema('hep')
subschema = schema['properties']['keywords']

snippet = (
'<datafield tag="653" ind1=" " ind2=" ">'
' <subfield code="9">author</subfield>'
' <subfield code="a">Data</subfield>'
'</datafield>'
) # record/1260876

expected = [
{
'source': 'author',
'keyword': 'Data',
},
]
result = hep.do(create_record(snippet))

assert validate(result['keywords'], subschema) is None
assert expected == result['keywords']

expected = [
{
'9': 'author',
'a': 'Data',
},
]
result = hep2marc.do(result)

assert expected == result['653']

0 comments on commit 0eaf664

Please sign in to comment.