From: Chris Sharp Date: Wed, 16 Dec 2015 12:10:37 +0000 (-0500) Subject: LP#1486592 - Generate prices for concerto dataset. X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=b000225aee7499a2ff2fb5479ef4d7d6e0ba1113;p=working%2FEvergreen.git LP#1486592 - Generate prices for concerto dataset. The "concerto" test data needs prices on copies to test various features. This adds a function to generate a price when a copy is populated. Signed-off-by: Chris Sharp --- diff --git a/Open-ILS/tests/datasets/sql/env_create.sql b/Open-ILS/tests/datasets/sql/env_create.sql index 52c36035e7..ad5ba856aa 100644 --- a/Open-ILS/tests/datasets/sql/env_create.sql +++ b/Open-ILS/tests/datasets/sql/env_create.sql @@ -64,6 +64,15 @@ RETURNS void AS $$ SELECT evergreen.populate_call_number($1, $2, $3, NULL); $$ LANGUAGE SQL; +/* + * Each copy needs a price to be able to test lost/longoverdue and other + * real-life situations. Randomly generate a price between 1.99 and 25.99. + */ +CREATE OR REPLACE FUNCTION evergreen.generate_price() RETURNS FLOAT AS $$ +BEGIN + RETURN trunc(random() * 25 + 1) + .99; +END; +$$ LANGUAGE 'plpgsql'; /* * create a copy for every callnumber in the database whose label and owning_lib @@ -72,8 +81,8 @@ $$ LANGUAGE SQL; CREATE FUNCTION evergreen.populate_copy (circlib INTEGER, ownlib INTEGER, barcode TEXT, label TEXT) RETURNS void AS $$ - INSERT INTO asset.copy (call_number, circ_lib, creator, editor, loan_duration, fine_level, barcode) - SELECT id, $1, 1, 1, 1, 1, $3 || id::text + INSERT INTO asset.copy (call_number, circ_lib, creator, editor, loan_duration, fine_level, price, barcode) + SELECT id, $1, 1, 1, 1, 1, (SELECT evergreen.generate_price()), $3 || id::text FROM asset.call_number WHERE record > 0 AND label LIKE $4 || '%' AND owning_lib = $2; $$ LANGUAGE SQL; diff --git a/Open-ILS/tests/datasets/sql/env_destroy.sql b/Open-ILS/tests/datasets/sql/env_destroy.sql index 3fec691b90..9b51ab7f97 100644 --- a/Open-ILS/tests/datasets/sql/env_destroy.sql +++ b/Open-ILS/tests/datasets/sql/env_destroy.sql @@ -4,6 +4,7 @@ DROP TABLE marcxml_import; DROP FUNCTION evergreen.create_aou_address(INTEGER, TEXT, TEXT, TEXT, TEXT, TEXT, TEXT, TEXT); DROP FUNCTION evergreen.populate_call_number(INTEGER, TEXT, TEXT); DROP FUNCTION evergreen.populate_call_number(INTEGER, TEXT, TEXT, INTEGER); +DROP FUNCTION evergreen.generate_price(); DROP FUNCTION evergreen.populate_copy(INTEGER, INTEGER, TEXT, TEXT); DROP FUNCTION evergreen.next_copy (BIGINT); DROP FUNCTION evergreen.next_bib (BIGINT);