code: def test_list_tasks_with_limit_less_than_zero(
      self, mock_batch_service_client, cloud_batch_hook
  ):
      number_of_tasks = 3
      limit = -1
      region = "us-central1"
      project_id = "test_project_id"
      filter = "filter_description"
      job_name = "test_job"
  
      page = self._mock_pager(number_of_tasks)
      mock_batch_service_client.return_value.list_tasks.return_value = (
          page
      )
  
      with pytest.raises(expected_exception=AirflowException):
          cloud_batch_hook.list_tasks(
              region=region,
              project_id=project_id,
              job_name=job_name,
              filter=filter,
              limit=limit,
          )
  
imports: from __future__ import annotations
  from unittest import mock
  import pytest
  from google.cloud.batch import ListJobsRequest
  from google.cloud.batch_v1 import CreateJobRequest, Job, JobStatus
  from airflow.exceptions import AirflowException
  from airflow.providers.google.cloud.hooks.cloud_batch import CloudBatchAsyncHook, CloudBatchHook
  from tests.providers.google.cloud.utils.base_gcp_mock import mock_base_gcp_hook_default_project_id
label_desc: Use image node_id 15 for calling the TestCloudBathHook obj's underlying member method code with example usage: obj.test_list_tasks_with_limit_less_than_zero(mock_batch_service_client, cloud_batch_hook) without return types