code: def test_dataset_to_sql(
      sqlite_path, tmp_path, set_sqlalchemy_silence_uber_warning
  ):
      cache_dir = tmp_path / "cache"
      output_sqlite_path = os.path.join(cache_dir, "tmp.sql")
      dataset = SqlDatasetReader(
          "dataset", "sqlite:///" + sqlite_path, cache_dir=cache_dir
      ).read()
      SqlDatasetWriter(
          dataset,
          "dataset",
          "sqlite:///" + output_sqlite_path,
          num_proc=1,
      ).write()
  
      original_sql = iter_sql_file(sqlite_path)
      expected_sql = iter_sql_file(output_sqlite_path)
  
      for row1, row2 in zip(original_sql, expected_sql):
          assert row1 == row2
  
file_path: datasets/tests/io/test_sql.py
imports: import contextlib
  import os
  import sqlite3
  import pytest
  from datasets import Dataset, Features, Value
  from datasets.io.sql import SqlDatasetReader, SqlDatasetWriter
  from ..utils import assert_arrow_memory_doesnt_increase, assert_arrow_memory_increases, require_sqlalchemy
label_desc: Use image node_id 5 for calling a global function with example usage: test_dataset_to_sql(sqlite_path, tmp_path, set_sqlalchemy_silence_uber_warning) without return types