diff options
author | sadbeast <sadbeast@sadbeast.com> | 2024-06-23 15:36:59 -0700 |
---|---|---|
committer | sadbeast <sadbeast@sadbeast.com> | 2024-07-13 21:58:23 -0700 |
commit | 8d018d996c1eddb882dc64ebbd228bb0135944f3 (patch) | |
tree | d01956546a77dbae33357c9a5d174f511ac9b282 /test/functions.sql | |
download | teamdraft-main.tar.gz teamdraft-main.tar.bz2 |
Diffstat (limited to 'test/functions.sql')
-rw-r--r-- | test/functions.sql | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/functions.sql b/test/functions.sql new file mode 100644 index 0000000..e7dbce2 --- /dev/null +++ b/test/functions.sql @@ -0,0 +1,38 @@ +BEGIN; +SELECT plan(10); + +SELECT has_function('current_season'); +SELECT function_lang_is('current_season', 'sql'); +SELECT function_returns('current_season', 'integer'); + +INSERT INTO seasons (started_at, ended_at) VALUES (NOW(), NOW() + interval '3 months'); +SELECT results_eq( + 'SELECT current_season()', + 'SELECT 1', + 'should select a season' +); + +SELECT has_function('category_score'); +SELECT function_lang_is('category_score', 'plpgsql'); +SELECT function_returns('category_score', 'smallint'); + +SELECT results_eq( + $$SELECT category_score('win')$$, + 'SELECT 1::smallint' +); + +SELECT results_eq( + 'SELECT category_score(''superbowl''),' + || 'category_score(''conference'')', + 'SELECT 10::smallint, 10::smallint' +); + +SELECT results_eq( + 'SELECT category_score(''playoffs''), ' + || 'category_score(''divisional''),' + || 'category_score(''champion'')', + 'SELECT 5::smallint, 5::smallint, 5::smallint' +); + +SELECT * FROM finish(); +ROLLBACK; |