code: def test_kill_7013(path=None):
      """check that a recursive kill does not silently skip subdatasets
      contained in subdirectory: github.com/datalad/datalad/issues/7013
      """
      ds = Dataset(path).create()
      (ds.pathobj / "subdir" / "subsubdir" / "subsubsubdir").mkdir(
          parents=True
      )
      ds.create("subdir/subdir/subds")
      ds.create("subdir/subds")
      ds.create("subds")
      res = ds.drop(
          path=["subds", "subdir"],
          what="all",
          reckless="kill",
          recursive=True,
      )
      # ensure that both subdatasets were killed
      subs = ds.subdatasets(state="present")
      assert len(subs) == 0
  
imports: import os
  import os.path
  from pathlib import Path
  from unittest.mock import patch
  from datalad.api import Dataset, clone, create, drop
  from datalad.distributed.drop import _detect_nondead_annex_at_remotes, _detect_unpushed_revs
  from datalad.support.exceptions import IncompleteResultsError, NoDatasetFound
  from datalad.support.gitrepo import GitRepo
  from datalad.tests.utils_pytest import DEFAULT_BRANCH, DEFAULT_REMOTE, OBSCURE_FILENAME, assert_in, assert_in_results, assert_raises, assert_repo_status, assert_result_count, assert_status, eq_, get_deeply_nested_structure, known_failure_githubci_win, nok_, ok_, with_tempfile
  from datalad.utils import chpwd
label_desc: Use image node_id 8 for calling a global function with example usage: test_kill_7013(path) without return types