]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/sql/Pg/t/regress/lp1442796_record_attr_using_xpath.pg
LP#1470957: provide pgTAP test for expected pubdate normalization
[Evergreen.git] / Open-ILS / src / sql / Pg / t / regress / lp1442796_record_attr_using_xpath.pg
1 BEGIN;
2
3 SELECT plan(2);
4
5 INSERT INTO config.record_attr_definition (name, label, format, xpath) VALUES (
6     'lp1442796', 'LP#1442796', 'marcxml',
7     $$//marc:datafield[@tag='245']/marc:subfield[@code='a']$$
8 );
9
10 SELECT lives_ok($DATA$
11 INSERT INTO biblio.record_entry (id, last_xact_id, marc)
12 VALUES (999999998, 'pgtap', '<record    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd"    xmlns="http://www.loc.gov/MARC21/slim">
13   <leader>00531nam a2200157 a 4500</leader>
14   <controlfield tag="005">20080729170300.0</controlfield>
15   <controlfield tag="008">      t19981999enka              0 eng  </controlfield>
16   <datafield tag="245" ind1="1" ind2="4">
17     <subfield code="a">test-value</subfield>
18   </datafield>
19 </record>')
20 $DATA$,
21 'LP#1442796: ingest record when xpath-based record attr definition is in use');
22
23 SELECT is(
24     attrs->'lp1442796',
25     'test-value',
26     'LP#1442796: get expected attribute value back'
27 )
28 FROM metabib.record_attr
29 WHERE id = 999999998;
30
31 ROLLBACK;