code: def test__download_raw_files_iter(
      self, mocker: MockerFixture
  ) -> None:
      response_1 = DatasourceRawSamplesData(
          hasMore=True,
          cursor="cursor1",
          data=[
              DatasourceRawSamplesDataRow(
                  fileName="file1", readUrl="url1"
              ),
              DatasourceRawSamplesDataRow(
                  fileName="file2", readUrl="url2"
              ),
          ],
      )
      response_2 = DatasourceRawSamplesData(
          hasMore=False,
          cursor="cursor2",
          data=[
              DatasourceRawSamplesDataRow(
                  fileName="file3", readUrl="url3"
              ),
              DatasourceRawSamplesDataRow(
                  fileName="file4", readUrl="url4"
              ),
          ],
      )
      download_function = mocker.MagicMock(
          side_effect=[response_1, response_2]
      )
      client = ApiWorkflowClient(token="abc", dataset_id="dataset-id")
      progress_bar = mocker.spy(tqdm, "tqdm")
      assert list(
          client._download_raw_files_iter(
              download_function=download_function,
              from_=0,
              to=5,
              relevant_filenames_file_name="relevant-filenames",
              use_redirected_read_url=True,
              progress_bar=progress_bar,
              foo="bar",
          )
      ) == [
          ("file1", "url1"),
          ("file2", "url2"),
          ("file3", "url3"),
          ("file4", "url4"),
      ]
      download_function.assert_has_calls(
          [
              mocker.call(
                  dataset_id="dataset-id",
                  var_from=0,
                  to=5,
                  relevant_filenames_file_name="relevant-filenames",
                  use_redirected_read_url=True,
                  foo="bar",
              ),
              mocker.call(
                  dataset_id="dataset-id",
                  cursor="cursor1",
                  relevant_filenames_file_name="relevant-filenames",
                  use_redirected_read_url=True,
                  foo="bar",
              ),
          ]
      )
      assert progress_bar.update.call_count == 4
  
imports: import pytest
  import tqdm
  from pytest_mock import MockerFixture
  from lightly.api import ApiWorkflowClient, api_workflow_datasources
  from lightly.openapi_generated.swagger_client.models import DatasourceConfigAzure, DatasourceConfigGCS, DatasourceConfigLOCAL, DatasourceConfigS3, DatasourceConfigS3DelegatedAccess, DatasourcePurpose, DatasourceRawSamplesDataRow
  from lightly.openapi_generated.swagger_client.models.datasource_config_verify_data import DatasourceConfigVerifyData
  from lightly.openapi_generated.swagger_client.models.datasource_config_verify_data_errors import DatasourceConfigVerifyDataErrors
  from lightly.openapi_generated.swagger_client.models.datasource_processed_until_timestamp_response import DatasourceProcessedUntilTimestampResponse
  from lightly.openapi_generated.swagger_client.models.datasource_raw_samples_data import DatasourceRawSamplesData
label_desc: Use image node_id 22 for calling the TestDatasourcesMixin obj's underlying member method code with example usage: obj.test__download_raw_files_iter(mocker) without return types