parent
1397b3fcaf
commit
f552f2db12
@ -0,0 +1,30 @@
|
||||
import os
|
||||
import requests
|
||||
import json
|
||||
|
||||
class IntegrationTestHelper:
|
||||
|
||||
@classmethod
|
||||
def get_environment_variables(cls):
|
||||
username = os.environ["GEOCODER_API_TEST_USERNAME"]
|
||||
api_key = os.environ["GEOCODER_API_TEST_API_KEY"]
|
||||
host = os.environ["GEOCODER_API_TEST_HOST"]
|
||||
table_name = os.environ["GEOCODER_API_TEST_TABLE_NAME"]
|
||||
|
||||
return {
|
||||
"username": username,
|
||||
"api_key": api_key,
|
||||
"host": host,
|
||||
"table_name": table_name
|
||||
}
|
||||
|
||||
@classmethod
|
||||
def execute_query(cls, sql_api_url, query):
|
||||
query_url = "{0}&q={1}".format(sql_api_url, query)
|
||||
print "Executing query: {0}".format(query_url)
|
||||
query_response = requests.get(query_url)
|
||||
if query_response.status_code != 200:
|
||||
raise Exception("Error executing SQL API query")
|
||||
query_response_data = json.loads(query_response.text)
|
||||
|
||||
return query_response_data['rows'][0]['geometry']
|
@ -1,29 +1,22 @@
|
||||
import os, time, requests, json
|
||||
from unittest import TestCase
|
||||
from nose.tools import assert_raises
|
||||
from nose.tools import assert_not_equal
|
||||
from ..helpers.integration_test_helper import IntegrationTestHelper
|
||||
|
||||
|
||||
class TestConfigHelper(TestCase):
|
||||
class TestAdmin0Functions(TestCase):
|
||||
|
||||
def setUp(self):
|
||||
username = os.environ["GEOCODER_API_TEST_USERNAME"]
|
||||
api_key = os.environ["GEOCODER_API_TEST_API_KEY"]
|
||||
host = os.environ["GEOCODER_API_TEST_HOST"]
|
||||
self.table_name = os.environ["GEOCODER_API_TEST_TABLE_NAME"]
|
||||
self.sql_api_url = "https://{0}.{1}/api/v2/sql?api_key={2}".format(username, host, api_key)
|
||||
self.env_variables = IntegrationTestHelper.get_environment_variables()
|
||||
self.sql_api_url = "https://{0}.{1}/api/v2/sql?api_key={2}".format(
|
||||
self.env_variables['username'],
|
||||
self.env_variables['host'],
|
||||
self.env_variables['api_key']
|
||||
)
|
||||
|
||||
def test_if_select_with_admin0_is_ok(self):
|
||||
query = "SELECT cdb_geocode_admin0_polygon(name) as geometry FROM {0} LIMIT 1".format(self.table_name)
|
||||
geometry = self.execute_query(query)
|
||||
assert geometry != None
|
||||
|
||||
def build_sql_api_query_url(self, query):
|
||||
return "{0}&q={1}".format(self.sql_api_url,query)
|
||||
|
||||
def execute_query(self, query):
|
||||
query_url = self.build_sql_api_query_url(query)
|
||||
query_response = requests.get(query_url)
|
||||
if query_response.status_code != 200:
|
||||
raise Exception("Error executing SQL API query")
|
||||
query_response_data = json.loads(query_response.text)
|
||||
return query_response_data['rows'][0]['geometry']
|
||||
query = "SELECT cdb_geocode_admin0_polygon(name) as geometry " \
|
||||
"FROM {0} LIMIT 1".format(
|
||||
self.env_variables['table_name'])
|
||||
geometry = IntegrationTestHelper.execute_query(self.sql_api_url, query)
|
||||
assert_not_equal(geometry, None)
|
||||
|
Loading…
Reference in new issue