### Apache Airflow Provider(s)

google

### Versions of Apache Airflow Providers

apache-airflow-providers-google==5.1.0

### Apache Airflow version

2.1.4

### Operating System

MacOS BigSur 11.6

### Deployment

Virtualenv installation

### Deployment details

`tox4` virtual environment

### What happened

1) Unit testing some DAG task operators with `asset op.dry_run() is None`
2) `AttributeError` is raised when `baseoperator` iterates through `template_fields` and calls `getattr`

```python
    def dry_run(self) -> None:
        """Performs dry run for the operator - just render template fields."""
        self.log.info('Dry run')
        for field in self.template_fields:
            content = getattr(self, field)
```
3) Caused by deprecated `destination_bucket` argument, is being assigned to `self.bucket_name`

```python
    template_fields = [
        "bucket_name",
        "object_name",
        "destination_bucket",
        "destination_object",
        "folder_id",
        "file_name",
        "drive_id",
        "impersonation_chain",
    ]

    def __init__(
        self,
        *,
        bucket_name: Optional[str] = None,
        object_name: Optional[str] = None,
        destination_bucket: Optional[str] = None,  # deprecated
        destination_object: Optional[str] = None,  # deprecated
        file_name: str,
        folder_id: str,
        drive_id: Optional[str] = None,
        gcp_conn_id: str = "google_cloud_default",
        delegate_to: Optional[str] = None,
        impersonation_chain: Optional[Union[str, Sequence[str]]] = None,
        **kwargs,
    ) -> None:
        super().__init__(**kwargs)
        self.bucket_name = destination_bucket or bucket_name
        if destination_bucket:
            warnings.warn(
                "`destination_bucket` is deprecated please use `bucket_name`",
                DeprecationWarning,
                stacklevel=2,
            )
        self.object_name = destination_object or object_name
        if destination_object:
            warnings.warn(
                "`destination_object` is deprecated please use `object_name`",
                DeprecationWarning,
                stacklevel=2,
            )
        self.folder_id = folder_id
        self.drive_id = drive_id
        self.file_name = file_name
        self.gcp_conn_id = gcp_conn_id
        self.delegate_to = delegate_to
        self.impersonation_chain = impersonation_chain
```

### What you expected to happen

Calling `op.dry_run()` should return None and not raise any exceptions.

The templated fields contains deprecated arguments (`destination_bucket`, `destination_object`), and aren't initialized in the init method for the class.

The base operator loops through these templated fields, but since `GoogleDriveToGCSOperator` does not initialize `self.destination_bucket` or `self.destination_object`, it raises an `AttributeError`

### How to reproduce

```python

from airflow.providers.google.cloud.transfers import gdrive_to_gcs


# pytest fixtures included as arguments
# won't include for brevity, but can provide if necessary
def test_gdrive_to_gcs_transfer(
        test_dag,
        mock_gcp_default_conn,
        patched_log_entry,
        today
):
    op = gdrive_to_gcs.GoogleDriveToGCSOperator(
        task_id="test_gcs_to_gdrive_transfer",
        dag=test_dag,
        bucket_name="some-other-bucket",
        object_name="thing_i_want_to_copy.csv",
        file_name="my_file.csv",
        folder_id="my_folder",
        drive_id="some_drive_id",
    )
    assert op.dry_run() is None
```

### Anything else

Not sure where it would be appropriate to address this issue since the deprecated fields support backward compatibility to previous versions of the operator.

This is my first time contributing to the project, but hope this is helpful.

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

airflow/providers/google/cloud/transfers/gdrive_to_gcs.py
:type file_name: str
    :param drive_id: Optional. The id of the shared Google Drive in which the file resides.
    :type drive_id: str
    :param gcp_conn_id: The GCP connection ID to use when fetching connection info.
    :type gcp_conn_id: str
    :param delegate_to: The account to impersonate using domain-wide delegation of authority,
        if any. For this to work, the service account making the request must have
        domain-wide delegation enabled.
    :type delegate_to: str
    :param impersonation_chain: Optional service account to impersonate using short-term
        credentials, or chained list of accounts required to get the access_token
        of the last account in the list, which will be impersonated in the request.
        If set as a string, the account must grant the originating account
        the Service Account Token Creator IAM role.
        If set as a sequence, the identities from the list must grant
        Service Account Token Creator IAM role to the directly preceding identity, with first
        account from the list granting this role to the originating account (templated).
    :type impersonation_chain: Union[str, Sequence[str]]
    """
    template_fields = [
        "bucket_name",
        "object_name",
        "destination_bucket",
        "destination_object",
        "folder_id",
        "file_name",
        "drive_id",
        "impersonation_chain",
    ]
    def __init__(