code: def test_download_demo_datasets_not_list(
      mock_boto3,
      mock_config,
      mock_mkdirs,
      mock_exists,
      mock_join,
      mock_getcwd,
  ):
      """Test downloading only one demo dataset."""
  
      # setup
  
      mock_exists.return_value = False
      mock_getcwd.return_value = "test_dir"
      datasets = "test_dataset"
  
      # run
  
      result = data.download_demo(datasets)
  
      # assert
  
      expected_os_join_calls = [
          call("test_dir", "demos"),
          call(mock_join.return_value, "test_dataset"),
      ]
  
      mock_boto3.client.assert_called_once_with(
          "s3", config=mock_config.return_value
      )
      mock_config.assert_called_once_with(
          signature_version=data.UNSIGNED
      )
  
      mock_mkdirs.assert_called_once_with(mock_join.return_value)
      assert mock_join.call_args_list == expected_os_join_calls
      assert result == mock_join.return_value
  
imports: from mock import Mock, call, patch
  from atm import data
label_desc: Use image node_id 2 for calling a global function with example usage: test_download_demo_datasets_not_list(mock_boto3, mock_config, mock_mkdirs, mock_exists, mock_join, mock_getcwd) without return types