code: def test_start_go_pipeline_without_go_installed_raises(
      self, mock_which
  ):
      mock_which.return_value = None
      hook = BeamHook(runner=DEFAULT_RUNNER)
  
      error_message = (
          r"You need to have Go installed to run beam go pipeline\. See .* "
          "installation guide. If you are running airflow in Docker see more info at '.*'"
      )
      with pytest.raises(AirflowException, match=error_message):
          hook.start_go_pipeline(
              go_file=GO_FILE,
              variables=copy.deepcopy(BEAM_VARIABLES_GO),
          )
  
imports: from __future__ import annotations
  import copy
  import os
  import re
  import subprocess
  from unittest import mock
  from unittest.mock import ANY, AsyncMock, MagicMock
  import pytest
  from airflow.exceptions import AirflowException
  from airflow.providers.apache.beam.hooks.beam import BeamAsyncHook, BeamHook, beam_options_to_args, run_beam_command
label_desc: Use image node_id 9 for calling the TestBeamHook obj's underlying member method code with example usage: obj.test_start_go_pipeline_without_go_installed_raises(mock_which) without return types