cartodb-postgresql/test/CDB_UserTablesTest.sql

33 lines
1.0 KiB
MySQL
Raw Normal View History

SET client_min_messages TO ERROR;
DO
$do$
BEGIN
IF NOT EXISTS (
SELECT *
FROM pg_catalog.pg_user
WHERE usename = 'publicuser') THEN
CREATE ROLE publicuser LOGIN;
END IF;
END
$do$;
SET client_min_messages TO NOTICE;
CREATE TABLE pub(a int);
CREATE TABLE prv(a int);
GRANT SELECT ON TABLE pub TO publicuser;
REVOKE SELECT ON TABLE prv FROM publicuser;
SELECT cartodb.CDB_UserTables() ORDER BY 1;
SELECT 'all', cartodb.CDB_UserTables('all') ORDER BY 2;
SELECT 'public', cartodb.CDB_UserTables('public') ORDER BY 2;
SELECT 'private', cartodb.CDB_UserTables('private') ORDER BY 2;
SELECT '--unsupported--', cartodb.CDB_UserTables('--unsupported--') ORDER BY 2;
-- now tests with public user
\c contrib_regression publicuser
SELECT 'all_publicuser', cartodb.CDB_UserTables('all') ORDER BY 2;
SELECT 'public_publicuser', cartodb.CDB_UserTables('public') ORDER BY 2;
SELECT 'private_publicuser', cartodb.CDB_UserTables('private') ORDER BY 2;
\c contrib_regression postgres
DROP TABLE pub;
DROP TABLE prv;