code: def test_pull_args(
      tmp_dir, scm, dvc, git_downstream, exp_stage, all_, rev, result3
  ):
      baseline = scm.get_rev()
  
      results = dvc.experiments.run(
          exp_stage.addressing, params=["foo=1"]
      )
      exp1 = first(results)
      ref_info1 = first(exp_refs_by_rev(scm, exp1))
      results = dvc.experiments.run(
          exp_stage.addressing, params=["foo=2"]
      )
      exp2 = first(results)
      ref_info2 = first(exp_refs_by_rev(scm, exp2))
  
      scm.commit("new_baseline")
  
      results = dvc.experiments.run(
          exp_stage.addressing, params=["foo=3"]
      )
      exp3 = first(results)
      ref_info3 = first(exp_refs_by_rev(scm, exp3))
  
      if rev:
          rev = baseline
  
      downstream_exp = git_downstream.tmp_dir.dvc.experiments
      git_downstream.tmp_dir.scm.fetch_refspecs(
          str(tmp_dir), ["master:master"]
      )
      downstream_exp.pull(
          git_downstream.remote, [], all_commits=all_, rev=rev
      )
      assert git_downstream.tmp_dir.scm.get_ref(str(ref_info1)) == exp1
      assert git_downstream.tmp_dir.scm.get_ref(str(ref_info2)) == exp2
      if result3:
          result3 = exp3
      assert (
          git_downstream.tmp_dir.scm.get_ref(str(ref_info3)) == result3
      )
  
file_path: dvc/tests/func/experiments/test_remote.py
imports: import logging
  import pytest
  from funcy import first
  from dvc.repo.experiments.utils import exp_refs_by_rev
label_desc: Use image node_id 8 for calling a global function with example usage: test_pull_args(tmp_dir, scm, dvc, git_downstream, exp_stage, all_, rev, result3) without return types