42 lines
1.2 KiB
MySQL
42 lines
1.2 KiB
MySQL
|
/*
|
||
|
* Test emp.research_weights_view
|
||
|
*/
|
||
|
BEGIN;
|
||
|
/* Remove foreign keys from the empire research table */
|
||
|
ALTER TABLE emp.technologies_v2
|
||
|
DROP CONSTRAINT fk_emptech_empire ,
|
||
|
DROP CONSTRAINT fk_emptech_technology;
|
||
|
|
||
|
/* Insert a few records */
|
||
|
DELETE FROM emp.technologies_v2;
|
||
|
INSERT INTO emp.technologies_v2 (
|
||
|
empire_id , technology_name_id ,
|
||
|
emptech_state , emptech_points , emptech_priority
|
||
|
) VALUES
|
||
|
( 1 , 1 , 'RESEARCH' , 0 , 0 ) ,
|
||
|
( 1 , 2 , 'RESEARCH' , 0 , 1 ) ,
|
||
|
( 1 , 3 , 'RESEARCH' , 0 , 2 ) ,
|
||
|
( 1 , 4 , 'RESEARCH' , 0 , 3 ) ,
|
||
|
( 1 , 5 , 'RESEARCH' , 0 , 4 ) ,
|
||
|
( 1 , 6 , 'PENDING' , NULL , NULL ) ,
|
||
|
( 1 , 7 , 'KNOWN' , NULL , NULL );
|
||
|
|
||
|
/* Set the constant */
|
||
|
SELECT sys.uoc_constant( 'game.research.weightBase' , '(test)' , 'Test' , 10.0 );
|
||
|
|
||
|
/***** TESTS BEGIN HERE *****/
|
||
|
SELECT plan( 2 );
|
||
|
|
||
|
SELECT diag_test_name( 'emp.research_weights_view - Rows present' );
|
||
|
SELECT is( COUNT(*)::INT , 5 )
|
||
|
FROM emp.research_weights_view;
|
||
|
|
||
|
SELECT diag_test_name( 'emp.research_weights_view - weight = game.research.weightBase ^ priority' );
|
||
|
SELECT is_empty( $$
|
||
|
SELECT * FROM emp.research_weights_view
|
||
|
WHERE emptech_weight IS NULL
|
||
|
OR emptech_weight <> POW( 10 , technology_name_id - 1 )
|
||
|
$$ );
|
||
|
|
||
|
SELECT * FROM finish( );
|
||
|
ROLLBACK;
|