code: def test_resource_group_get_all_outputs(batch):
      b = batch
      j1 = b.new_job()
      j1.declare_resource_group(
          foo={"bed": "{root}.bed", "bim": "{root}.bim"}
      )
      assert isinstance(j1.foo, ResourceGroup)
      j1.command(f"cat {j1.foo.bed}")
      j2 = b.new_job()
      j2.command(f"cat {j1.foo.bed}")
  
      for r in [j1.foo.bed, j1.foo.bim]:
          assert r in j1._internal_outputs
          assert r in j2._inputs
  
      assert j1.foo.bed in j1._mentioned
      assert j1.foo.bim not in j1._mentioned
  
      assert j1.foo.bed in j2._mentioned
      assert j1.foo.bim not in j2._mentioned
  
      assert j1.foo not in j1._mentioned
  
imports: from typing import AsyncIterator
  import os
  import pytest
  import subprocess
  import tempfile
  from hailtop import pip_version
  from hailtop.batch import Batch, LocalBackend, ResourceGroup
  from hailtop.batch.resource import JobResourceFile
  from hailtop.batch.utils import concatenate
label_desc: Use image node_id 16 for calling a global function with example usage: test_resource_group_get_all_outputs(batch) without return types