5 -------------------------
6 -- Setup test environment
7 -- User w/ library card
8 -- Vandelay settings (merge profile, queue)
9 -- "Pre-loaded" bib record to be overlayed
10 -- Matching bib record added to Vandelay queue
11 -- including 905u with user barcode
12 -------------------------
14 INSERT INTO actor.usr (profile, ident_type, usrname, home_ou, family_name,
15 passwd, first_given_name, expire_date, dob, suffix)
16 VALUES (13, 1, 'TEST_USER', 1, 'TESTER', 'TEST1234', 'TEST',
17 NOW() + '3 years'::INTERVAL, NULL, NULL);
19 INSERT INTO actor.card (barcode, usr)
20 VALUES ('TEST_BARCODE', CURRVAL('actor.usr_id_seq'));
23 SET card = CURRVAL('actor.card_id_seq')
24 WHERE id = CURRVAL('actor.usr_id_seq');
26 INSERT INTO vandelay.merge_profile (owner, name, preserve_spec, update_bib_source)
27 VALUES (1, 'TEST', '901c', TRUE);
29 --XXX: Do we need to create a custom item_attr_def?
30 -- If def 1 was deleted from an install, this will break
31 INSERT INTO vandelay.bib_queue (owner, name, item_attr_def)
32 VALUES (CURRVAL('actor.usr_id_seq'), 'TEST', 1);
34 INSERT INTO biblio.record_entry (id, edit_date, last_xact_id, marc)
35 VALUES (1234512345, now() - '15 days'::INTERVAL, 'TEST',
36 '<record xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.loc.gov/MARC21/slim" xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd"><leader>00374nam a22001212 4500</leader><controlfield tag="001">A101401-2143164</controlfield><controlfield tag="005">20140506000000.0</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780199588480 (Trade Paper)</subfield><subfield code="c">USD 11.95 List</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Haigh, John</subfield><subfield code="e">Author</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Probability</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="b">Oxford University Press, Incorporated</subfield><subfield code="c">2012-05-04</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">144 p.</subfield><subfield code="c">16..84 l. X 11..63 w. in.</subfield></datafield><datafield tag="901" ind1=" " ind2=" "><subfield code="t">biblio</subfield></datafield></record>');
38 INSERT INTO vandelay.queued_bib_record (queue, bib_source, purpose, marc)
39 SELECT CURRVAL('vandelay.queue_id_seq'), 2, 'overlay',
40 '<record xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.loc.gov/MARC21/slim" xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd"><leader>00374nam a22001212 4500</leader><controlfield tag="001">A101401-2143164</controlfield><controlfield tag="005">20140506000000.0</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780199588480 (Trade Paper)</subfield><subfield code="c">USD 11.95 List</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Haigh, John</subfield><subfield code="e">Author</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Probability</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="b">Oxford University Press, Incorporated</subfield><subfield code="c">2012-05-04</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">144 p.</subfield><subfield code="c">16..84 l. X 11..63 w. in.</subfield></datafield><datafield tag="901" ind1=" " ind2=" "><subfield code="t">biblio</subfield><subfield code="c">1234512345</subfield></datafield><datafield tag="905" ind1=" " ind2=" "><subfield code="u">'
41 || barcode || '</subfield></datafield></record>'
43 WHERE id = CURRVAL('actor.card_id_seq');
45 -----------------------
46 -- Import the record --
47 -----------------------
50 SELECT vandelay.overlay_bib_record( queued_record, eg_record,
51 CURRVAL('vandelay.merge_profile_id_seq')::int )
52 FROM vandelay.bib_match
53 WHERE queued_record = CURRVAL('vandelay.queued_record_id_seq')
55 'Function call succeeded'
58 ---------------------------------
59 -- Test for new values of editor,
60 -- edit date, and source
61 ---------------------------------
63 (SELECT editor::bigint FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
64 CURRVAL('actor.usr_id_seq'),
69 (SELECT edit_date::date FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
71 'Edit Date was updated'
75 (SELECT source FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
77 'Record source was updated'
80 --------------------------------
81 -- Set up test to verify a false
82 -- update_bib_source flag will
83 -- not update editor, edit date
85 --------------------------------
87 UPDATE vandelay.merge_profile
88 SET update_bib_source = FALSE
91 INSERT INTO biblio.record_entry (id, source, edit_date, last_xact_id, marc)
92 VALUES (9876598764, 1, now() - '15 days'::INTERVAL, 'TEST',
93 '<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"><leader>01047cam a22003498a 4500</leader><controlfield tag="001">339</controlfield><controlfield tag="003">CONS</controlfield><controlfield tag="005">20090505140900.0</controlfield><controlfield tag="008">001129s2001 ctu c 001 0 eng </controlfield><datafield tag="010" ind1=" " ind2=" "><subfield code="a"> 00065571 </subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0761322507 (lib. bdg.)</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(MAnMC)807579</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)ocm45661816</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DLC</subfield><subfield code="c">DLC</subfield><subfield code="d">DPL</subfield><subfield code="d">MRQ</subfield><subfield code="d">UtOrBLW</subfield></datafield><datafield tag="042" ind1=" " ind2=" "><subfield code="a">pcc</subfield><subfield code="a">lcac</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MRQA</subfield></datafield><datafield tag="082" ind1="0" ind2="0"><subfield code="a">523.4</subfield><subfield code="2">21</subfield></datafield><datafield tag="099" ind1=" " ind2=" "><subfield code="a">J</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Farndon, John</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Planets and their moons /</subfield><subfield code="c">John Farndon.</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="a">Brookfield, CT :</subfield><subfield code="b">Copper Beech Books,</subfield><subfield code="c">c2001.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">32 p. :</subfield><subfield code="b">col. ill. ;</subfield><subfield code="c">27 cm.</subfield></datafield><datafield tag="901" ind1=" " ind2=" "><subfield code="t">biblio</subfield></datafield></record>');
95 INSERT INTO vandelay.queued_bib_record (queue, bib_source, purpose, marc)
96 SELECT CURRVAL('vandelay.queue_id_seq'), 2, 'overlay',
97 '<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"><leader>01047cam a22003498a 4500</leader><controlfield tag="001">339</controlfield><controlfield tag="003">CONS</controlfield><controlfield tag="005">20090505140900.0</controlfield><controlfield tag="008">001129s2001 ctu c 001 0 eng </controlfield><datafield tag="010" ind1=" " ind2=" "><subfield code="a"> 00065571 </subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0761322507 (lib. bdg.)</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(MAnMC)807579</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)ocm45661816</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DLC</subfield><subfield code="c">DLC</subfield><subfield code="d">DPL</subfield><subfield code="d">MRQ</subfield><subfield code="d">UtOrBLW</subfield></datafield><datafield tag="042" ind1=" " ind2=" "><subfield code="a">pcc</subfield><subfield code="a">lcac</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MRQA</subfield></datafield><datafield tag="082" ind1="0" ind2="0"><subfield code="a">523.4</subfield><subfield code="2">21</subfield></datafield><datafield tag="099" ind1=" " ind2=" "><subfield code="a">J</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Farndon, John</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Planets and their moons /</subfield><subfield code="c">John Farndon.</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="a">Brookfield, CT :</subfield><subfield code="b">Copper Beech Books,</subfield><subfield code="c">c2001.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">32 p. :</subfield><subfield code="b">col. ill. ;</subfield><subfield code="c">27 cm.</subfield></datafield><datafield tag="901" ind1=" " ind2=" "><subfield code="t">biblio</subfield><subfield code="c">9876598764</subfield></datafield><datafield tag="905" ind1=" " ind2=" "><subfield code="u">'
98 || barcode || '</subfield></datafield></record>'
100 WHERE id = CURRVAL('actor.card_id_seq');
102 ------------------------
103 -- Import the new record
104 ------------------------
107 SELECT vandelay.overlay_bib_record( queued_record, eg_record,
108 CURRVAL('vandelay.merge_profile_id_seq')::int )
109 FROM vandelay.bib_match
110 WHERE queued_record = CURRVAL('vandelay.queued_record_id_seq')
112 'Function call succeeded'
115 ------------------------------------
116 -- Test for no new values of editor,
117 -- edit date, and source
118 ------------------------------------
120 (SELECT editor::bigint FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
121 CURRVAL('actor.usr_id_seq'),
122 'Editor was not updated'
126 (SELECT edit_date::date FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
128 'Edit Date was not updated'
132 (SELECT source FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
134 'Record source was not updated'