def test_create_udf(self, udf_path): client = self._client bq_test_dataset = utils.get_target_bq_dataset(udf_path) job_config = QueryJobConfig() job_config.default_dataset = (f'{client.project}.{bq_test_dataset}') try: udf_sql = utils.replace_with_test_datasets(udf_path, client.project) udf_creation_result = client.query(udf_sql, job_config=job_config).result() self.assertIsInstance(udf_creation_result, _EmptyRowIterator) except GoogleAPICallError as e: self.fail(e.message)
def test_create_udf_signature(self, udf_path): client = self._client bq_test_dataset = utils.get_target_bq_dataset(udf_path) job_config = QueryJobConfig() job_config.default_dataset = (f'{client.project}.{bq_test_dataset}') udf_signature = utils.extract_udf_signature(udf_path) udf_sql = utils.replace_with_test_datasets( project_id=client.project, udf_sql=f'CREATE OR REPLACE FUNCTION {udf_signature} AS (NULL)') try: udf_creation_result = client.query(udf_sql, job_config=job_config).result() self.assertIsInstance(udf_creation_result, _EmptyRowIterator) except GoogleAPICallError as e: self.fail(e.message)
def test_create_udf(self, udf_path): client = bigquery.Client() bq_test_dataset = Utils.get_target_bq_dataset(udf_path) client.create_dataset(bq_test_dataset, exists_ok=True) job_config = QueryJobConfig() job_config.default_dataset = (f'{client.project}.{bq_test_dataset}') with open(udf_path) as udf_file: try: udf_sql = Utils.replace_with_test_datasets( udf_path, client.project) udf_creation_result = client.query( udf_sql, job_config=job_config).result() self.assertIsInstance(udf_creation_result, _EmptyRowIterator) except GoogleAPICallError as e: self.fail(e.message)