dataservices-api/client/test/sql/20_admin1_test.sql

40 lines
1.6 KiB
MySQL
Raw Normal View History

\set VERBOSITY terse
-- Add to the search path the schema
SET search_path TO public,cartodb,cdb_dataservices_client;
2015-11-12 22:06:17 +08:00
-- Mock the server functions
2018-09-10 18:54:37 +08:00
CREATE OR REPLACE FUNCTION cdb_dataservices_server.cdb_geocode_admin1_polygon(username text, orgname text, admin1_name text)
2015-11-12 22:06:17 +08:00
RETURNS Geometry AS $$
BEGIN
2018-09-10 18:54:37 +08:00
RAISE NOTICE 'cdb_dataservices_server.cdb_geocode_admin1_polygon invoked with params (%, %, %)', username, orgname, admin1_name;
2015-11-12 22:06:17 +08:00
RETURN NULL;
END;
$$ LANGUAGE 'plpgsql';
2018-09-10 18:54:37 +08:00
CREATE OR REPLACE FUNCTION cdb_dataservices_server.cdb_geocode_admin1_polygon(username text, orgname text, admin1_name text, country_name text)
2015-11-12 22:06:17 +08:00
RETURNS Geometry AS $$
BEGIN
2018-09-10 18:54:37 +08:00
RAISE NOTICE 'cdb_dataservices_server.cdb_geocode_admin1_polygon invoked with params (%, %, %, %)', username, orgname, admin1_name, country_name;
2015-11-12 22:06:17 +08:00
RETURN NULL;
END;
$$ LANGUAGE 'plpgsql';
2018-09-06 22:40:05 +08:00
-- -- Exercise the public and the proxied function
2015-11-12 22:06:17 +08:00
2018-09-06 22:40:05 +08:00
-- No permissions granted
SELECT cdb_geocode_admin1_polygon('California');
SELECT cdb_geocode_admin1_polygon('California', 'United States');
2018-09-06 22:40:05 +08:00
-- Grant other permissions but geocoding
2018-09-11 18:02:24 +08:00
SELECT CDB_Conf_SetConf('api_keys_postgres', '{"username": "test_user", "permissions": ["routing", "isolines"]}');
2018-09-06 22:40:05 +08:00
SELECT cdb_geocode_admin1_polygon('California');
SELECT cdb_geocode_admin1_polygon('California', 'United States');
-- Grant geocoding permissions
2018-09-11 18:02:24 +08:00
SELECT CDB_Conf_SetConf('api_keys_postgres', '{"username": "test_user", "permissions": ["geocoding"]}');
2018-09-06 22:40:05 +08:00
SELECT cdb_geocode_admin1_polygon('California');
SELECT cdb_geocode_admin1_polygon('California', 'United States');
-- Remove permissions
SELECT CDB_Conf_RemoveConf('api_keys_postgres');