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, update_bib_editor)
27 VALUES (1, 'TEST', '901c', TRUE, 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,
89 update_bib_editor = FALSE
92 INSERT INTO biblio.record_entry (id, source, edit_date, last_xact_id, marc)
93 VALUES (9876598764, 1, now() - '15 days'::INTERVAL, 'TEST',
94 '<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>');
96 INSERT INTO vandelay.queued_bib_record (queue, bib_source, purpose, marc)
97 SELECT CURRVAL('vandelay.queue_id_seq'), 2, 'overlay',
98 '<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">'
99 || barcode || '</subfield></datafield></record>'
101 WHERE id = CURRVAL('actor.card_id_seq');
103 ------------------------
104 -- Import the new record
105 ------------------------
108 SELECT vandelay.overlay_bib_record( queued_record, eg_record,
109 CURRVAL('vandelay.merge_profile_id_seq')::int )
110 FROM vandelay.bib_match
111 WHERE queued_record = CURRVAL('vandelay.queued_record_id_seq')
113 'Function call succeeded'
116 ------------------------------------
117 -- Test for no new values of editor,
118 -- edit date, and source
119 ------------------------------------
121 (SELECT editor::bigint FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
122 CURRVAL('actor.usr_id_seq'),
123 'Editor was not updated'
127 (SELECT edit_date::date FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
129 'Edit Date was not updated'
133 (SELECT source FROM biblio.record_entry ORDER BY id DESC LIMIT 1),
135 'Record source was not updated'