/** * Test for view statistics_top_ten_query_times * * Every test does raise division by zero if it failes * * @author: "Stefanie Janine Stölting" * @license: PostgreSQL https://opensource.org/licenses/postgresql */ DO $$ DECLARE pg_extension_installed BOOLEAN; test_result BOOLEAN; BEGIN SELECT count(*) AS pg_stat_statements_exists FROM pg_extension WHERE extname = 'pg_stat_statements' INTO pg_extension_installed ; IF pg_extension_installed THEN -- Check view existence WITH test AS ( SELECT COUNT(*) AS exist , 0 AS zero FROM pg_catalog.pg_views WHERE viewname = 'statistics_top_ten_query_times' ) SELECT CASE WHEN 1 / test.exist = 1 THEN TRUE ELSE (1 / zero)::BOOLEAN END AS res INTO test_result FROM test ; -- Test if the view runs without errors SELECT TRUE INTO test_result FROM statistics_top_ten_query_times ; END IF; END $$;