code: def test_edit_crs_like(data, runner):
      # Set up the file to be edited.
      inputfile = str(data.join("RGB.byte.tif"))
      with rasterio.open(inputfile, "r+") as dst:
          dst.crs = {"init": "epsg:32617"}
          dst.nodata = 1.0
  
      # Double check.
      with rasterio.open(inputfile) as src:
          assert src.crs == {"init": "epsg:32617"}
          assert src.nodata == 1.0
  
      # The test.
      templatefile = "tests/data/RGB.byte.tif"
      result = runner.invoke(
          main_group,
          [
              "edit-info",
              inputfile,
              "--like",
              templatefile,
              "--crs",
              "like",
          ],
      )
      assert result.exit_code == 0
      with rasterio.open(inputfile) as src:
          assert src.crs.to_epsg() == 32618
          assert src.nodata == 1.0
  
imports: import json
  import click
  import numpy
  import pytest
  import rasterio
  from rasterio.enums import ColorInterp
  from rasterio.rio.edit_info import all_handler, crs_handler, tags_handler, transform_handler, colorinterp_handler
  from rasterio.rio.main import main_group
  import rasterio.shutil
label_desc: Use image node_id 18 for calling a global function with example usage: test_edit_crs_like(data, runner) without return types