docs: def get_random_path(graph) -> List[BaseEntity]:
      """Get a random path from the graph as a list of nodes.
  
      :param pybel.BELGraph graph: A BEL graph
      """
      wg = graph.to_undirected()
  
      nodes = wg.nodes()
  
      def pick_random_pair() -> Tuple[BaseEntity, BaseEntity]:
          """Get a pair of random nodes."""
          return random.sample(nodes, k=2)
  
      source, target = pick_random_pair()
  
      tries = 0
      sentinel_tries = 5
  
      while not nx.has_path(wg, source, target) and tries < sentinel_tries:
          tries += 1
          source, target = pick_random_pair()
  
      if tries == sentinel_tries:
          return [source]
  
      return nx.shortest_path(wg, source=source, target=target)