|
@@ -24,7 +24,6 @@ from nose.tools import assert_equal, assert_not_equal, assert_true, assert_false
|
|
|
|
|
|
|
|
from desktop.auth.backend import rewrite_user
|
|
from desktop.auth.backend import rewrite_user
|
|
|
from desktop.lib.django_test_util import make_logged_in_client
|
|
from desktop.lib.django_test_util import make_logged_in_client
|
|
|
-from desktop.lib.test_utils import add_to_group, grant_access
|
|
|
|
|
from useradmin.models import User
|
|
from useradmin.models import User
|
|
|
|
|
|
|
|
from notebook.connectors.sql_alchemy import SqlAlchemyApi
|
|
from notebook.connectors.sql_alchemy import SqlAlchemyApi
|
|
@@ -34,6 +33,7 @@ if sys.version_info[0] > 2:
|
|
|
else:
|
|
else:
|
|
|
from mock import patch, Mock, MagicMock
|
|
from mock import patch, Mock, MagicMock
|
|
|
|
|
|
|
|
|
|
+
|
|
|
LOG = logging.getLogger(__name__)
|
|
LOG = logging.getLogger(__name__)
|
|
|
|
|
|
|
|
|
|
|
|
@@ -43,7 +43,6 @@ class TestApi(object):
|
|
|
self.client = make_logged_in_client(username="test", groupname="default", recreate=True, is_superuser=False)
|
|
self.client = make_logged_in_client(username="test", groupname="default", recreate=True, is_superuser=False)
|
|
|
|
|
|
|
|
self.user = rewrite_user(User.objects.get(username="test"))
|
|
self.user = rewrite_user(User.objects.get(username="test"))
|
|
|
- grant_access("test", "default", "notebook")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_column_backticks_escaping(self):
|
|
def test_column_backticks_escaping(self):
|
|
@@ -142,6 +141,24 @@ class TestApi(object):
|
|
|
assert_equal(data['data'], [['row1'], ['row2']])
|
|
assert_equal(data['data'], [['row1'], ['row2']])
|
|
|
assert_equal(data['meta'](), [{'type': 'BIGINT_TYPE'}])
|
|
assert_equal(data['meta'](), [{'type': 'BIGINT_TYPE'}])
|
|
|
|
|
|
|
|
|
|
+ def test_check_status(self):
|
|
|
|
|
+ interpreter = {
|
|
|
|
|
+ 'options': {
|
|
|
|
|
+ 'url': 'mysql://hue:localhost@hue:3306/hue'
|
|
|
|
|
+ },
|
|
|
|
|
+ }
|
|
|
|
|
+ notebook = Mock()
|
|
|
|
|
+
|
|
|
|
|
+ with patch('notebook.connectors.sql_alchemy.CONNECTION_CACHE') as CONNECTION_CACHE:
|
|
|
|
|
+
|
|
|
|
|
+ snippet = {'result': {'handle': {'guid': 'guid-1', 'has_result_set': False}}}
|
|
|
|
|
+ response = SqlAlchemyApi(self.user, interpreter).check_status(notebook, snippet)
|
|
|
|
|
+ assert_equal(response['status'], 'success')
|
|
|
|
|
+
|
|
|
|
|
+ snippet = {'result': {'handle': {'guid': 'guid-1', 'has_result_set': True}}}
|
|
|
|
|
+ response = SqlAlchemyApi(self.user, interpreter).check_status(notebook, snippet)
|
|
|
|
|
+ assert_equal(response['status'], 'available')
|
|
|
|
|
+
|
|
|
|
|
|
|
|
class TestAutocomplete(object):
|
|
class TestAutocomplete(object):
|
|
|
|
|
|
|
@@ -149,7 +166,6 @@ class TestAutocomplete(object):
|
|
|
self.client = make_logged_in_client(username="test", groupname="default", recreate=True, is_superuser=False)
|
|
self.client = make_logged_in_client(username="test", groupname="default", recreate=True, is_superuser=False)
|
|
|
|
|
|
|
|
self.user = rewrite_user(User.objects.get(username="test"))
|
|
self.user = rewrite_user(User.objects.get(username="test"))
|
|
|
- grant_access("test", "default", "notebook")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_empty_database_names(self):
|
|
def test_empty_database_names(self):
|