def _drop_all_functions(self, database): udfs = self.list_udfs(database=database) for fnct in udfs: stmt = ddl.DropFunction(fnct.name, fnct.inputs, must_exist=False, aggregate=False, database=database) self._execute(stmt) udafs = self.list_udas(database=database) for udaf in udafs: stmt = ddl.DropFunction(udaf.name, udaf.inputs, must_exist=False, aggregate=True, database=database) self._execute(stmt)
def _drop_single_function(self, name, input_types, database=None, aggregate=False): stmt = ddl.DropFunction(name, input_types, must_exist=False, aggregate=aggregate, database=database) self._execute(stmt)
def test_delete_udf_db(self): stmt = ddl.DropFunction(self.name, self.inputs, database='test') result = stmt.compile() expected = "DROP FUNCTION test.`test_name`(string, string)" assert result == expected
def test_delete_udf_aggregate(self): stmt = ddl.DropFunction(self.name, self.inputs, aggregate=True) result = stmt.compile() expected = "DROP AGGREGATE FUNCTION `test_name`(string, string)" assert result == expected
def test_delete_udf_if_exists(self): stmt = ddl.DropFunction(self.name, self.inputs, must_exist=False) result = stmt.compile() expected = "DROP FUNCTION IF EXISTS `test_name`(string, string)" assert result == expected
def test_delete_udf_simple(self): stmt = ddl.DropFunction(self.name, self.inputs) result = stmt.compile() expected = "DROP FUNCTION `test_name`(string, string)" assert result == expected