code: def test_arg_missing(path=None, path2=None):
      # test fix for gh-3553
      ds = create(path)
      assert_raises(
          InsufficientArgumentsError,
          ds.siblings,
          "add",
          url=path2,
      )
      assert_status(
          "ok", ds.siblings("add", url=path2, name="somename")
      )
      # trigger some name guessing functionality that will still not
      # being able to end up using a hostnames-spec despite being
      # given a URL
      if not on_windows:
          # the trick with the file:// URL creation only works on POSIX
          # the underlying tested code here is not about paths, though,
          # so it is good enough to run this on POSIX system to be
          # reasonably sure that things work
          assert_raises(
              InsufficientArgumentsError,
              ds.siblings,
              "add",
              url=f"file://{path2}",
          )
  
      # there is no name guessing with 'configure'
      assert_in_results(
          ds.siblings(
              "configure", url="http://somename", on_failure="ignore"
          ),
          status="error",
          message="need sibling `name` for configuration",
      )
  
      # needs a URL
      assert_raises(
          InsufficientArgumentsError,
          ds.siblings,
          "add",
          name="somename",
      )
      # just pushurl is OK
      assert_status(
          "ok", ds.siblings("add", pushurl=path2, name="somename2")
      )
  
      # needs group with groupwanted
      assert_raises(
          InsufficientArgumentsError,
          ds.siblings,
          "add",
          url=path2,
          name="somename",
          annex_groupwanted="whatever",
      )
  
file_path: datalad/datalad/distribution/tests/test_siblings.py
imports: from datalad.api import Dataset, clone, create, install, siblings
  from datalad.support.exceptions import InsufficientArgumentsError
  from datalad.support.gitrepo import GitRepo
  from datalad.support.path import basename
  from datalad.support.path import join
  from datalad.support.path import normpath, relpath
  from datalad.tests.utils_pytest import DEFAULT_BRANCH, DEFAULT_REMOTE, assert_false, assert_in, assert_in_results, assert_not_in, assert_raises, assert_result_count, assert_status, chpwd, create_tree, eq_, ok_, on_appveyor, serve_path_via_http, with_sameas_remote, with_tempfile
  from datalad.utils import Path, on_windows
  import pytest
label_desc: Use image node_id 4 for calling a global function with example usage: test_arg_missing(path, path2) without return types