5 INSERT INTO actor.workstation (name, owning_lib) values ('test', 1);
7 INSERT INTO actor.workstation_setting (workstation, name, value)
9 (SELECT id FROM actor.workstation WHERE name = 'test'),
10 'eg.search.adv_pane', '"test-workstation"'
14 -- duplicate the setting type as an org setting to verify precedence
15 INSERT INTO config.org_unit_setting_type (name, grp, datatype, label)
17 'eg.search.adv_pane', 'gui', 'string',
20 'Catalog Advanced Search Default Pane',
25 INSERT INTO actor.org_unit_setting (org_unit, name, value)
26 VALUES (1, 'eg.search.adv_pane', '"test-org-unit"');
30 FROM actor.get_cascade_setting('eg.search.adv_pane',
31 1, 1, (SELECT id FROM actor.workstation WHERE name = 'test'))),
33 'Workstation setting takes precedence over org setting'
36 DELETE FROM actor.workstation_setting WHERE name = 'eg.search.adv_pane';
40 FROM actor.get_cascade_setting('eg.search.adv_pane',
41 1, 1, (SELECT id FROM actor.workstation WHERE name = 'test'))),
43 'Org unit setting should now work'
46 PREPARE user_setting_insert AS
47 INSERT INTO config.usr_setting_type (name, grp, datatype, label)
49 'eg.search.adv_pane', 'gui', 'string',
52 'Catalog Advanced Search Default Pane',
58 'user_setting_insert',
59 '%Cannot be used as both a user setting and a workstation setting.',
60 'User settings cannot also be workstation settings'
63 DELETE FROM config.workstation_setting_type WHERE name = 'eg.search.adv_pane';
66 'user_setting_insert',
67 'User settings can now be created'
70 INSERT INTO actor.usr_setting (usr, name, value)
71 VALUES (1, 'eg.search.adv_pane', '"test-user"');
75 FROM actor.get_cascade_setting('eg.search.adv_pane',
76 1, 1, (SELECT id FROM actor.workstation WHERE name = 'test'))),
78 'User setting takes precedence over org setting'
82 -- Finish the tests and clean up.
83 SELECT * FROM finish();