def _make_query(client, query, submission_type="Execute", udfs=None, settings=None, resources=[], wait=False, name=None, desc=None, local=True, is_parameterized=True, max=30.0, database='default', email_notify=False, **kwargs): """Wrapper around the real make_query""" res = make_query(client, query, submission_type, udfs, settings, resources, wait, name, desc, local, is_parameterized, max, database, email_notify, **kwargs) # Should be in the history if it's submitted. if submission_type == 'Execute': fragment = collapse_whitespace(smart_str(query[:20])) verify_history(client, fragment=fragment) return res
def test_drop_multi_databases(self): db1 = '%s_test_drop_1' % self.db_name db2 = '%s_test_drop_2' % self.db_name db3 = '%s_test_drop_3' % self.db_name try: hql = """ CREATE DATABASE %(db1)s; CREATE DATABASE %(db2)s; CREATE DATABASE %(db3)s; """ % {'db1': db1, 'db2': db2, 'db3': db3} resp = _make_query(self.client, hql) resp = wait_for_query_to_finish(self.client, resp, max=30.0) # Add a table to db1 hql = "CREATE TABLE " + "`" + db1 + "`." + "`test_drop_1` (a int);" resp = _make_query(self.client, hql, database=db1) resp = wait_for_query_to_finish(self.client, resp, max=30.0) assert_equal(resp.status_code, 200) # Drop them resp = self.client.get('/metastore/databases/drop', follow=True) assert_true('want to delete' in resp.content, resp.content) resp = self.client.post('/metastore/databases/drop', {u'database_selection': [db1, db2, db3]}) assert_equal(resp.status_code, 302) finally: make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db1}, wait=True) make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db2}, wait=True) make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db3}, wait=True)
def test_drop_multi_databases(self): db1 = '%s_test_drop_1' % self.db_name db2 = '%s_test_drop_2' % self.db_name db3 = '%s_test_drop_3' % self.db_name try: hql = """ CREATE DATABASE %(db1)s; CREATE DATABASE %(db2)s; CREATE DATABASE %(db3)s; """ % { 'db1': db1, 'db2': db2, 'db3': db3 } resp = _make_query(self.client, hql) resp = wait_for_query_to_finish(self.client, resp, max=30.0) # Drop them resp = self.client.get('/metastore/databases/drop', follow=True) assert_true('want to delete' in resp.content, resp.content) resp = self.client.post('/metastore/databases/drop', {u'database_selection': [db1, db2, db3]}) assert_equal(resp.status_code, 302) finally: make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db1}, wait=True) make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db2}, wait=True) make_query(self.client, 'DROP DATABASE IF EXISTS %(db)s' % {'db': db3}, wait=True)
def test_drop_multi_databases(self): db1 = "%s_test_drop_1" % self.db_name db2 = "%s_test_drop_2" % self.db_name db3 = "%s_test_drop_3" % self.db_name try: hql = """ CREATE DATABASE %(db1)s; CREATE DATABASE %(db2)s; CREATE DATABASE %(db3)s; """ % { "db1": db1, "db2": db2, "db3": db3, } resp = _make_query(self.client, hql) resp = wait_for_query_to_finish(self.client, resp, max=30.0) # Drop them resp = self.client.get("/metastore/databases/drop", follow=True) assert_true("want to delete" in resp.content, resp.content) resp = self.client.post("/metastore/databases/drop", {u"database_selection": [db1, db2, db3]}) assert_equal(resp.status_code, 302) finally: make_query(self.client, "DROP DATABASE IF EXISTS %(db)s" % {"db": db1}, wait=True) make_query(self.client, "DROP DATABASE IF EXISTS %(db)s" % {"db": db2}, wait=True) make_query(self.client, "DROP DATABASE IF EXISTS %(db)s" % {"db": db3}, wait=True)
def _make_query(client, query, submission_type="Execute", follow=True, udfs=None, settings=None, resources=[], wait=False, name=None, desc=None, local=True, is_parameterized=True): """Wrapper around the real make_query""" res = make_query(client, query, submission_type, follow, udfs, settings, resources, wait, name, desc, local, is_parameterized) # Should be in the history if it's submitted. if submission_type == 'Execute': verify_history(client, fragment=collapse_whitespace(query[:20])) return res