Game updates improvements
* Added a set of tables which define game updates and their targets. These definitions replace the old enumerate type. Added a set of triggers which automatically create specific update tables, insert missing entries, etc... when game update types are being manipulated. * Removed manual insertion of game updates from empire creation function and universe generator. * Added registration of core update targets (i.e. planets and empires), updated all existing game update processing functions and added type registrations * Created Maven project for game updates control components, moved existing components from the -simple project, rewritten most of what they contained, added new components for server-side update batch processing
This commit is contained in:
parent
ba6a1e2b41
commit
56eddcc4f0
93 changed files with 4004 additions and 578 deletions
legacyworlds-server-data/db-structure/tests/user
030-data/145-updates
040-functions/003-updates
010-get-table-pkey.sql020-tgf-speupd-before-insert.sql030-tgf-speupd-after-delete.sql040-insert-missing-updates.sql050-tgf-insert-missing-updates.sql060-tgf-updtype-after-insert-row.sql070-tgf-check-update-type-proc.sql080-tgf-reorder-update-types.sql090-tgf-updtgt-before-insert.sql100-tgf-updtgt-after-insert.sql110-tgf-updtgt-after-delete.sql120-register-update-type.sql
050-updates
000-updates-ctrl
105-planet-resource-regeneration
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Test privileges on sys.update_targets
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 4 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_targets - No INSERT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ INSERT INTO sys.update_targets DEFAULT VALUES; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_targets - No UPDATE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ UPDATE sys.update_targets SET updtgt_id = 42; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_targets - No SELECT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ SELECT * FROM sys.update_targets; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_targets - No DELETE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ DELETE FROM sys.update_targets; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Test privileges on sys.update_types
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 4 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_types - No INSERT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ INSERT INTO sys.update_types DEFAULT VALUES; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_types - No UPDATE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ UPDATE sys.update_types SET updtgt_id = 42; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_types - No SELECT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ SELECT * FROM sys.update_types; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.update_types - No DELETE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ DELETE FROM sys.update_types; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Test privileges on sys.updates
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 4 );
|
||||
|
||||
SELECT diag_test_name( 'sys.updates - No INSERT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ INSERT INTO sys.updates DEFAULT VALUES; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.updates - No UPDATE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ UPDATE sys.updates SET updtgt_id = 42; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.updates - No SELECT privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ SELECT * FROM sys.updates; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT diag_test_name( 'sys.updates - No DELETE privilege' );
|
||||
SELECT throws_ok(
|
||||
$$ DELETE FROM sys.updates; $$ ,
|
||||
42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.get_table_pkey()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.get_table_pkey() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.get_table_pkey( 'a' , 'b' ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_speupd_before_insert()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_speupd_before_insert() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_speupd_before_insert( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_speupd_after_delete()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_speupd_after_delete() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_speupd_after_delete( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.insert_missing_updates()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.insert_missing_updates() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.insert_missing_updates( 1 ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_insert_missing_updates()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_insert_missing_updates() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_insert_missing_updates( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_updtype_after_insert_row()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_updtype_after_insert_row() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_updtype_after_insert_row( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_check_update_type_proc()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_check_update_type_proc() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_check_update_type_proc( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_reorder_update_types()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_reorder_update_types() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_reorder_update_types( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_updtgt_before_insert()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_updtgt_before_insert() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_updtgt_before_insert( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_updtgt_after_insert()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_updtgt_after_insert() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_updtgt_after_insert( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.tgf_updtgt_after_delete()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.tgf_updtgt_after_delete() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.tgf_updtgt_after_delete( ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.register_update_type()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.register_update_type() - No EXECUTE privilege' );
|
||||
SELECT throws_ok( $$ SELECT sys.register_update_type( '' , '' , '' , 'x' ) $$ , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.start_tick()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.start_tick() - EXECUTE privilege' );
|
||||
SELECT lives_ok( 'SELECT sys.start_tick( )' );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.check_stuck_tick()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.check_stuck_tick() - EXECUTE privilege' );
|
||||
SELECT lives_ok( 'SELECT sys.check_stuck_tick( )' );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.process_updates()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.process_updates() - EXECUTE privilege' );
|
||||
SELECT lives_ok( 'SELECT sys.process_updates( 1 )' );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -1,11 +0,0 @@
|
|||
/*
|
||||
* Test privileges on sys.process_planet_res_regen_updates()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.process_planet_res_regen_updates() - Privileges' );
|
||||
SELECT throws_ok( 'SELECT sys.process_planet_res_regen_updates( 1 )' , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Test privileges on sys.process_res_regen_updates()
|
||||
*/
|
||||
BEGIN;
|
||||
SELECT plan( 1 );
|
||||
|
||||
SELECT diag_test_name( 'sys.process_res_regen_updates() - Privileges' );
|
||||
SELECT throws_ok( 'SELECT sys.process_res_regen_updates( 1 )' , 42501 );
|
||||
|
||||
SELECT * FROM finish( );
|
||||
ROLLBACK;
|
Reference in a new issue