code: def test_setup_build(self):
      check_call(
          [python, "setup.py", "build"],
          cwd=os.path.join(cwd, "test_distutils"),
      )
  
      extra_args = [
          "--no-build-isolation",
      ]
      check_call(
          [python, "-m", "pip", "install", ".", "--prefix=demo_install"]
          + extra_args,
          cwd=os.path.join(cwd, "test_distutils"),
      )
  
      base = os.path.join(
          cwd,
          "test_distutils",
          "demo_install",
      )
      libdir = os.path.join(base, "lib")
      if not os.path.isdir(libdir):
          libdir = os.path.join(base, "lib64")
  
      local_env = os.environ.copy()
      local_env["PYTHONPATH"] = os.path.join(
          libdir, python_version, "site-packages"
      )
      check_call([python, "-c", "import demo"], env=local_env)
      check_call(
          [python, "setup.py", "clean"],
          cwd=os.path.join(cwd, "test_distutils"),
      )
      shutil.rmtree(os.path.join(cwd, "test_distutils", "demo_install"))
      shutil.rmtree(os.path.join(cwd, "test_distutils", "build"))
  
imports: from subprocess import check_call
  import os
  import re
  import shutil
  import sys
  import sysconfig
  import unittest
label_desc: Use image node_id 1 for calling the TestDistutils obj's underlying member method code with example usage: obj.test_setup_build() without return types