Stamping 0858: Fixed field enhancements
authorDan Wells <dbw2@calvin.edu>
Tue, 18 Feb 2014 17:01:29 +0000 (12:01 -0500)
committerDan Wells <dbw2@calvin.edu>
Tue, 18 Feb 2014 17:04:07 +0000 (12:04 -0500)
Also, move test file to a possibly better location.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/live_t/XXXX.fixed_field_enhancements.pg [deleted file]
Open-ILS/src/sql/Pg/t/regress/lp1272074_0858_fixed_field_enhancements.pg [new file with mode: 0644]
Open-ILS/src/sql/Pg/upgrade/0858.data.fixed_field_enhancements.sql [new file with mode: 0644]
Open-ILS/src/sql/Pg/upgrade/XXXX.data.fixed_field_enhancements.sql [deleted file]

index 914bf2a..c9db384 100644 (file)
@@ -91,7 +91,7 @@ CREATE TRIGGER no_overlapping_deps
     BEFORE INSERT OR UPDATE ON config.db_patch_dependencies
     FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
 
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0857', :eg_version); -- miker/jeff
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0858', :eg_version); -- senator/dbwells
 
 CREATE TABLE config.bib_source (
        id              SERIAL  PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/live_t/XXXX.fixed_field_enhancements.pg b/Open-ILS/src/sql/Pg/live_t/XXXX.fixed_field_enhancements.pg
deleted file mode 100644 (file)
index d48c4a0..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-\set ECHO
-\set QUIET 1
--- Turn off echo and keep things quiet.
-
--- Format the output for nice TAP.
-\pset format unaligned
-\pset tuples_only true
-\pset pager
-
--- Revert all changes on failure.
-\set ON_ERROR_ROLLBACK 1
-\set ON_ERROR_STOP true
-\set QUIET 1
-
--- let's do this thing
-BEGIN;
-
-SELECT plan(1);
-
-CREATE OR REPLACE FUNCTION pg_temp.test_phys_char_no_overlaps() RETURNS BOOL AS $$
-DECLARE
-    ptype   TEXT;
-    str     TEXT;
-    subf    RECORD;
-    gap     INT;
-BEGIN
-    FOR ptype IN
-        SELECT ptype_key FROM config.marc21_physical_characteristic_type_map
-    LOOP
-        str := ptype;
-
-        FOR subf IN
-            SELECT subfield, start_pos, length
-            FROM config.marc21_physical_characteristic_subfield_map
-            WHERE ptype_key = ptype
-            ORDER BY subfield
-        LOOP
-            gap := subf.start_pos - LENGTH(str);
-            IF gap > 0 THEN
-                str := str || REPEAT(' ', gap);
-            ELSIF gap < 0 THEN
-                -- This is a WARNING instead of an ERROR just so we can
-                -- fail the test nicely. But it really is an error.
-                RAISE WARNING 'subfield % for ptype % backs up!',
-                    ptype, subf.subfield;
-                RETURN FALSE;
-            END IF;
-            str := str || REPEAT('|', subf.length);
-        END LOOP;
-        -- RAISE DEBUG '%', str;
-    END LOOP;
-
-    RETURN TRUE;
-END;
-$$ LANGUAGE PLPGSQL;
-
-SELECT is(
-    pg_temp.test_phys_char_no_overlaps(),
-    TRUE,
-    'Ensure that no set of subfields for a given Physical Characteristics ''type'' (00/a) contains any overlaps.'
-);
-
-SELECT * FROM finish();
-ROLLBACK;
-
diff --git a/Open-ILS/src/sql/Pg/t/regress/lp1272074_0858_fixed_field_enhancements.pg b/Open-ILS/src/sql/Pg/t/regress/lp1272074_0858_fixed_field_enhancements.pg
new file mode 100644 (file)
index 0000000..d48c4a0
--- /dev/null
@@ -0,0 +1,65 @@
+\set ECHO
+\set QUIET 1
+-- Turn off echo and keep things quiet.
+
+-- Format the output for nice TAP.
+\pset format unaligned
+\pset tuples_only true
+\pset pager
+
+-- Revert all changes on failure.
+\set ON_ERROR_ROLLBACK 1
+\set ON_ERROR_STOP true
+\set QUIET 1
+
+-- let's do this thing
+BEGIN;
+
+SELECT plan(1);
+
+CREATE OR REPLACE FUNCTION pg_temp.test_phys_char_no_overlaps() RETURNS BOOL AS $$
+DECLARE
+    ptype   TEXT;
+    str     TEXT;
+    subf    RECORD;
+    gap     INT;
+BEGIN
+    FOR ptype IN
+        SELECT ptype_key FROM config.marc21_physical_characteristic_type_map
+    LOOP
+        str := ptype;
+
+        FOR subf IN
+            SELECT subfield, start_pos, length
+            FROM config.marc21_physical_characteristic_subfield_map
+            WHERE ptype_key = ptype
+            ORDER BY subfield
+        LOOP
+            gap := subf.start_pos - LENGTH(str);
+            IF gap > 0 THEN
+                str := str || REPEAT(' ', gap);
+            ELSIF gap < 0 THEN
+                -- This is a WARNING instead of an ERROR just so we can
+                -- fail the test nicely. But it really is an error.
+                RAISE WARNING 'subfield % for ptype % backs up!',
+                    ptype, subf.subfield;
+                RETURN FALSE;
+            END IF;
+            str := str || REPEAT('|', subf.length);
+        END LOOP;
+        -- RAISE DEBUG '%', str;
+    END LOOP;
+
+    RETURN TRUE;
+END;
+$$ LANGUAGE PLPGSQL;
+
+SELECT is(
+    pg_temp.test_phys_char_no_overlaps(),
+    TRUE,
+    'Ensure that no set of subfields for a given Physical Characteristics ''type'' (00/a) contains any overlaps.'
+);
+
+SELECT * FROM finish();
+ROLLBACK;
+
diff --git a/Open-ILS/src/sql/Pg/upgrade/0858.data.fixed_field_enhancements.sql b/Open-ILS/src/sql/Pg/upgrade/0858.data.fixed_field_enhancements.sql
new file mode 100644 (file)
index 0000000..1e445cb
--- /dev/null
@@ -0,0 +1,11 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('0858', :eg_version);
+
+-- Fix faulty seed data. Otherwise for ptype 'f' we have subfield 'e'
+-- overlapping subfield 'd'
+UPDATE config.marc21_physical_characteristic_subfield_map
+    SET start_pos = 5
+    WHERE ptype_key = 'f' AND subfield = 'e';
+
+COMMIT;
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.data.fixed_field_enhancements.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.data.fixed_field_enhancements.sql
deleted file mode 100644 (file)
index 2128422..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-BEGIN;
-
--- SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
-
--- Fix faulty seed data. Otherwise for ptype 'f' we have subfield 'e'
--- overlapping subfield 'd'
-UPDATE config.marc21_physical_characteristic_subfield_map
-    SET start_pos = 5
-    WHERE ptype_key = 'f' AND subfield = 'e';
-
-COMMIT;