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:
Emmanuel BENOîT 2012-02-03 16:25:03 +01:00
parent ba6a1e2b41
commit 56eddcc4f0
93 changed files with 4004 additions and 578 deletions

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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;