@Override
  protected void copy(List<AzfsResourceId> srcPaths, List<AzfsResourceId> destPaths)
      throws IOException {
    checkArgument(
        srcPaths.size() == destPaths.size(),
        "sizes of source paths and destination paths do not match");

    Iterator<AzfsResourceId> sourcePathsIterator = srcPaths.iterator();
    Iterator<AzfsResourceId> destinationPathsIterator = destPaths.iterator();
    while (sourcePathsIterator.hasNext()) {
      final AzfsResourceId sourcePath = sourcePathsIterator.next();
      final AzfsResourceId destinationPath = destinationPathsIterator.next();
      copy(sourcePath, destinationPath);
    }
  }
@Test
  @SuppressWarnings("CheckReturnValue")
  public void testCopy() throws IOException {
    List<AzfsResourceId> src =
        new ArrayList<>(
            Arrays.asList(AzfsResourceId.fromComponents("account", "container", "from")));
    List<AzfsResourceId> dest =
        new ArrayList<>(Arrays.asList(AzfsResourceId.fromComponents("account", "container", "to")));
    when(mockedBlobClient.exists()).thenReturn(true);
    azureBlobStoreFileSystem.copy(src, dest);
    verify(mockedBlobClient, times(1)).copyFromUrl(any(String.class));
  }