This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 8c08850420d Use ValueError when no ArangoDB collection operation is 
specified (#70539)
8c08850420d is described below

commit 8c08850420da6980a87fe80d99f281b17040f438
Author: Dr Alex Mitre <[email protected]>
AuthorDate: Fri Jul 31 12:58:33 2026 -0600

    Use ValueError when no ArangoDB collection operation is specified (#70539)
---
 generated/known_airflow_exceptions.txt                       |  1 -
 .../src/airflow/providers/arangodb/operators/arangodb.py     |  4 ++--
 .../arangodb/tests/unit/arangodb/operators/test_arangodb.py  | 12 ++++++++++++
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/generated/known_airflow_exceptions.txt 
b/generated/known_airflow_exceptions.txt
index fcab3746d5c..53517fa9dcc 100644
--- a/generated/known_airflow_exceptions.txt
+++ b/generated/known_airflow_exceptions.txt
@@ -147,7 +147,6 @@ 
providers/apache/pinot/src/airflow/providers/apache/pinot/hooks/pinot.py::1
 providers/apache/spark/src/airflow/providers/apache/spark/hooks/spark_sql.py::2
 
providers/apache/spark/src/airflow/providers/apache/spark/hooks/spark_submit.py::10
 providers/arangodb/src/airflow/providers/arangodb/hooks/arangodb.py::9
-providers/arangodb/src/airflow/providers/arangodb/operators/arangodb.py::1
 providers/atlassian/jira/src/airflow/providers/atlassian/jira/hooks/jira.py::1
 
providers/celery/src/airflow/providers/celery/executors/celery_executor_utils.py::2
 providers/celery/src/airflow/providers/celery/executors/default_celery.py::2
diff --git 
a/providers/arangodb/src/airflow/providers/arangodb/operators/arangodb.py 
b/providers/arangodb/src/airflow/providers/arangodb/operators/arangodb.py
index 06273f486c4..a2bf3a164e0 100644
--- a/providers/arangodb/src/airflow/providers/arangodb/operators/arangodb.py
+++ b/providers/arangodb/src/airflow/providers/arangodb/operators/arangodb.py
@@ -21,7 +21,7 @@ from collections.abc import Callable, Sequence
 from typing import TYPE_CHECKING, Any
 
 from airflow.providers.arangodb.hooks.arangodb import ArangoDBHook
-from airflow.providers.common.compat.sdk import AirflowException, BaseOperator
+from airflow.providers.common.compat.sdk import BaseOperator
 
 if TYPE_CHECKING:
     from airflow.providers.common.compat.sdk import Context
@@ -112,7 +112,7 @@ class ArangoDBCollectionOperator(BaseOperator):
                 self.delete_collection,
             ]
         ):
-            raise AirflowException("At least one operation must be specified.")
+            raise ValueError("At least one operation must be specified.")
 
         if self.documents_to_insert:
             self.log.info(
diff --git a/providers/arangodb/tests/unit/arangodb/operators/test_arangodb.py 
b/providers/arangodb/tests/unit/arangodb/operators/test_arangodb.py
index 9963f007a38..87f87167c07 100644
--- a/providers/arangodb/tests/unit/arangodb/operators/test_arangodb.py
+++ b/providers/arangodb/tests/unit/arangodb/operators/test_arangodb.py
@@ -18,6 +18,8 @@ from __future__ import annotations
 
 from unittest import mock
 
+import pytest
+
 from airflow.providers.arangodb.operators.arangodb import AQLOperator, 
ArangoDBCollectionOperator
 
 
@@ -47,3 +49,13 @@ class TestArangoDBCollectionOperator:
         op.execute(mock.MagicMock())
         mock_hook.assert_called_once_with(arangodb_conn_id="arangodb_default")
         
mock_hook.return_value.insert_documents.assert_called_once_with("students", 
documents_to_insert)
+
+    @mock.patch("airflow.providers.arangodb.operators.arangodb.ArangoDBHook")
+    def test_no_operation_fails(self, mock_hook):
+        op = ArangoDBCollectionOperator(
+            task_id="noop_task",
+            collection_name="students",
+        )
+        with pytest.raises(ValueError, match="At least one operation must be 
specified."):
+            op.execute(mock.MagicMock())
+        mock_hook.return_value.insert_documents.assert_not_called()

Reply via email to